Techno Kitchen For Dart
A library for interacting with the SDGB API.
ATTENTION: You NEED TO provide endpoint request configuration yourself.
โจ Features
- UserSession: Manage user sessions with automatic expiration handling
- QR Code validation (10-minute expiration check)
- Session management (20-minute expiration)
- Automatic cookie isolation
getUserId: Get User ID by QR CodeGetUserPreviewApi: Fetch user preview dataGetUserDataApi: Fetch User full dataGetUserMusicApi: Fetch User music datarequestEndpoint: Request custom API endpoints- HTTP communication module (can be used to implement other APIs)
๐ Quick Start
Using UserSession
import 'package:dotenv/dotenv.dart';
import 'package:techno_kitchen_dart/techno_kitchen_dart.dart';
void main() async {
final config = Config.fromEnv(DotEnv()..load());
// Create session from QR code
final qrCode = 'SGWCMAID260211173345B98267A57924B440...';
final session = UserSession(qrCode, config);
// Or create from URL
final url = 'https://wq.waleak.net/qrcode/req/MAID260211...';
final session2 = UserSession.fromUrl(url, config: config);
// Initialize and login
await session.init();
await session.login();
// Fetch user data
final userData = await session.getUserData();
print('User: ${userData.userData.userName}');
// Request custom endpoint
final response = await session.requestEndpoint('GetSomethingApi', {
'userId': session.userId,
'a': 0,
});
// Logout
await session.logout();
}
Requesting Custom Endpoints
// Simple endpoint request with default userId
final response = await session.requestEndpoint('GetUserItemApi');
// With custom parameters
final response = await session.requestEndpoint('GetUserCharacterApi', {
'userId': session.userId,
'nextIndex': 0,
'maxCount': 100,
});
๐งช Testing
- Create a file
.envfrom template
cp .env.example .env
- Paste a valid QR code string into
QR_CODE - Run test scripts to verify login and API behavior
โ ๏ธ Disclaimer
This project communicates with AIME and title servers operated by someone. The communication protocol and obfuscation techniques are based on open-source repositories on GitHub.
No reverse engineering or direct analysis of game binaries was performed during development.
This project may carry unknown risks, including but not limited to:
- Data loss
- Score corruption or overwrites
- Incompatibility with server updates
- Unexpected behavior due to logic bugs
Use at your own risk.
๐ License
MIT License
๐ค Acknowledgements
Special thanks LEAKERS
Libraries
- techno_kitchen_dart
- SDGB API Dart implementation.