Phase 3 SDK expansion - Flutter/Dart implementations:
- Database SDK: Multi-model database with Key-Value, Document,
Vector, and Time Series stores
- Hosting SDK: Decentralized web hosting with domain management,
DNS, deployments, and SSL provisioning
- Bridge SDK: Cross-chain asset transfers with lock-mint and
burn-unlock patterns
All SDKs follow consistent patterns with:
- Async/await API using Futures
- Proper error handling with typed exceptions
- Configurable retry logic and timeouts
- Full type safety with Dart's type system
- Implement SynorStorage class for decentralized storage operations including upload, download, pinning, and CAR file management.
- Create supporting types and models for storage operations such as UploadOptions, Pin, and StorageConfig.
- Implement SynorWallet class for wallet operations including wallet creation, address generation, transaction signing, and balance queries.
- Create supporting types and models for wallet operations such as Wallet, Address, and Transaction.
- Introduce error handling for both storage and wallet operations.
- Created package_graph.json to define project structure and dependencies for synor_compute.
- Added version file to specify the Dart SDK version.
- Generated pubspec.lock to lock dependencies and their versions for the project.
Adds comprehensive model management and training capabilities:
synor-compute (Rust):
- ModelRegistry with pre-registered popular models
- LLMs: Llama 3/3.1, Mistral, Mixtral, Qwen, DeepSeek, Phi, CodeLlama
- Embedding: BGE, E5
- Image: Stable Diffusion XL, FLUX.1
- Speech: Whisper
- Multi-modal: LLaVA
- ModelInfo with parameters, format, precision, context length
- Custom model upload and registration
- Model search by name/category
Flutter SDK:
- Model registry APIs: listModels, getModel, searchModels
- Custom model upload with multipart upload
- Training APIs: train(), fineTune(), trainStream()
- TrainingOptions: framework, epochs, batch_size, learning_rate
- TrainingProgress for real-time updates
- ModelUploadOptions and ModelUploadResult
Example code for:
- Listing available models by category
- Fine-tuning pre-trained models
- Uploading custom Python/ONNX models
- Streaming training progress
This enables users to:
1. Use pre-registered models like 'llama-3-70b'
2. Upload their own custom models
3. Fine-tune models on custom datasets
4. Track training progress in real-time