norman_ai 0.1.0
norman_ai: ^0.1.0 copied to clipboard
Norman SDK
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased #
Planned #
- Enhanced error messages with more context
- Retry mechanism for failed requests
- Request/response interceptors
- Caching support
- WebSocket support for real-time updates
1.0.0 - 2025-01-15 #
Added #
- Initial release of Norman Core SDK for Dart
- Authentication API
- Multiple login methods (password, email, API key, OTP)
- User signup and registration
- Email verification
- API key generation
- Account Management API
- Get, create, update, and replace accounts
- Query with constraints
- Model Management API
- Get, create, upgrade, replace, and delete models
- Model versioning
- Active model selection
- Model base operations
- Invocation API
- Get and create invocations
- Create invocations by model names
- Invocation history
- File Operations
- File push (upload) with encrypted socket streaming
- File pull (download) with progress tracking
- Asset, input, and output retrieval
- Status Flags API
- Model flags
- Asset flags
- Invocation flags
- Input/output flags
- Notifications API
- HTTP Client with Dio
- Async operations
- Streaming support
- Automatic error handling
- Configurable timeouts
- Socket Client
- ChaCha20 encryption
- Streaming uploads
- Hash verification (xxHash3)
- Configuration
- Environment-based configuration
- HTTP settings
- IO buffer settings
- Security
- Sensitive data wrapper
- Token-based authentication
- Encrypted file transfers
- Models
- Type-safe request/response models
- JSON serialization
- Validation
- Error Handling
- Custom exceptions
- Detailed error messages
- Status code handling
Dependencies #
dio: ^5.4.0- HTTP clientpointycastle: ^3.7.3- Cryptographic operationsxxh3: ^1.0.1- Fast hashing
0.2.0 - 2025-01-10 [Pre-release] #
0.1.0 - 2025-01-05 [Pre-release] #
Added #
- Alpha release
- Basic project structure
- HTTP client foundation
- Authentication prototypes
- Initial documentation
Version Guidelines #
Major Version (X.0.0) #
- Breaking API changes
- Major feature additions
- Architectural changes
Minor Version (0.X.0) #
- New features (backward compatible)
- New API endpoints
- Performance improvements
Patch Version (0.0.X) #
- Bug fixes
- Documentation updates
- Minor improvements
Migration Guides #
Migrating to 1.0.0 #
This is the first stable release. Key features:
- SDK Initialization
// Old (0.x)
final client = HttpClient();
// New (1.0)
final sdk = NormanSDK();
- Configuration
// Configure before use
AppConfig.configure(
environment: 'production',
sandbox: 'main',
);
- Error Handling
// Use specific exceptions
try {
await sdk.login.loginPasswordEmail(request);
} on AuthenticationException catch (e) {
// Handle auth errors
}
Support #
For questions or issues, please:
- Open an issue on GitHub
- Contact support at support@norman-ai.com
- Check documentation at https://docs.norman-ai.com