- Use type hints consistently
- Optimize for readability over premature optimization
- Write modular code, using separate files for models, data loading, training, and evaluation
- Follow the Solidity best practices.
- Use OpenZeppelin libraries for common patterns like ERC20, ERC721, Ownable or AccessControl.
- Use CamelCase for naming functions and variables in Solidity.