NeoRust v0.4.0 - Production-Ready Neo N3 SDK
NeoRust is the most comprehensive Rust SDK for the Neo N3 blockchain ecosystem. It provides everything you need to build, deploy, and manage Neo applications - from a powerful Rust library to beautiful desktop applications.
๐ What's New in v0.3.0
๐ Complete Project Transformation
- 116 compilation errors eliminated - Achieved 100% compilation success across all components
- All security vulnerabilities resolved - Updated all vulnerable dependencies to secure versions
- Complete API modernization - Fixed all deprecated and broken API calls
- Production-ready implementations - Replaced all placeholder code with fully functional implementations
๐ Security Enhancements
- protobuf: Updated from 3.2.0 to 3.7.2 (RUSTSEC-2024-0437)
- rustc-serialize: Removed vulnerable dependency (RUSTSEC-2022-0004)
- rust-crypto: Removed vulnerable dependency (RUSTSEC-2022-0011)
- json: Removed unmaintained dependency (RUSTSEC-2022-0081)
- instant: Replaced with web-time for better WASM support (RUSTSEC-2024-0384)
- Migrated to secure RustCrypto ecosystem with proper cryptographic key management
๐ Production Features
- Complete CLI tool with comprehensive Neo N3 operations
- Real message signing and verification with ECDSA cryptography
- Transaction building and signing with proper fee calculation
- NeoFS file storage with complete client implementation and multipart upload
- DeFi protocol integration (Flamingo, NeoBurger, NeoCompound, GrandShare)
- NFT operations (mint, transfer, list, metadata management)
- Developer tools (encoding, hashing, signature verification)
๐ Achievement Metrics
- Compilation Errors: 116 โ 0 โ
- Security Vulnerabilities: 5 โ 0 โ
- Placeholder Implementations: 9 โ All Production-Ready โ
- Test Suite: 278 tests passing โ
- Examples: All working correctly โ
๐ Quick Start
๐ฆ Installation
Download Pre-built Binaries
Visit our Releases Page to download pre-built binaries for your platform:
- Linux:
neo-cli-linux-x86_64,neo-gui-linux-x86_64 - macOS:
neo-cli-macos-x86_64,neo-gui-macos-x86_64(Intel),neo-cli-macos-aarch64,neo-gui-macos-aarch64(Apple Silicon) - Windows:
neo-cli-windows-x86_64.exe,neo-gui-windows-x86_64.exe
Install from Crates.io
# Install the CLI globally
# Add the SDK to your project
๐ฑ Desktop GUI Application
Download and run the beautiful Neo N3 Wallet:
# Clone the repository
# Install dependencies and start
Access at: http://localhost:1420
Features:
- ๐ผ Multi-wallet management with secure storage
- ๐ Real-time portfolio dashboard with interactive charts
- ๐จ NFT collection browser and minting interface
- ๐ง Developer tools for encoding, hashing, and debugging
- ๐ Network management and blockchain monitoring
- โก Lightning-fast performance with hot reload
๐ป Command Line Interface
Install and use the powerful Neo CLI:
# Build the CLI application
# Create your first wallet
# Check network status
# Mint an NFT
# Explore all commands
๐ Rust SDK Library
Add to your Cargo.toml:
[]
= "0.4.0"
Quick example:
use *;
async
๐ฏ Core Features
๐๏ธ Complete Neo N3 Support
- Blockchain Integration: Full Neo N3 protocol compatibility
- Smart Contracts: Deploy, invoke, and manage contracts
- Transaction Building: Construct and sign all transaction types
- RPC Client: High-performance JSON-RPC communication
๐ผ Wallet & Account Management
- NEP-6 Standard: Industry-standard wallet format
- Multi-Account: Manage multiple accounts per wallet
- Hardware Wallets: Ledger device support
- Secure Storage: Encrypted private key management
๐จ NFT & Token Operations
- NEP-17 Tokens: Full token standard support
- NFT Management: Mint, transfer, and manage NFTs
- Collection Tools: Create and manage NFT collections
- Metadata Handling: IPFS and on-chain metadata support
๐ Network & Infrastructure
- Multi-Network: MainNet, TestNet, and private networks
- Node Management: Connect to multiple Neo nodes
- Network Monitoring: Real-time blockchain statistics
- Health Checks: Automatic node health monitoring
๐ง Developer Tools
- Contract Debugging: Advanced debugging capabilities
- Transaction Analysis: Detailed transaction inspection
- Gas Optimization: Fee calculation and optimization
- Testing Framework: Comprehensive testing utilities
๐ธ Screenshots
Desktop GUI Application
Beautiful dashboard with portfolio overview and real-time charts
Comprehensive wallet management with multi-account support
Elegant NFT collection browser with minting capabilities
Command Line Interface
Powerful CLI with beautiful colored output and progress indicators
๐๏ธ Architecture
๐ฆ Modular Design
NeoRust/
โโโ ๐ neo3/ # Core Rust SDK library
โโโ ๐ฅ๏ธ neo-gui/ # Desktop GUI application (Tauri + React)
โโโ ๐ป neo-cli/ # Command line interface
โโโ ๐ docs/ # Comprehensive documentation
โโโ ๐ website/ # Project website
โโโ ๐งช examples/ # Usage examples and tutorials
๐ง Technology Stack
- Backend: Rust with async/await support
- GUI: Tauri + React + TypeScript + Tailwind CSS
- CLI: Clap + Colored output + Interactive prompts
- Crypto: Industry-standard cryptographic libraries
- Network: High-performance HTTP/WebSocket clients
๐ Documentation
๐ Comprehensive Guides
- API Reference: Complete API documentation
- User Guide: Step-by-step tutorials
- Developer Docs: Advanced development guides
- Examples: Real-world usage examples
- Release Workflow: Automated release process guide
๐ Online Resources
- Website: https://neorust.netlify.app/
- Documentation: https://r3e-network.github.io/NeoRust/
- Crate Page: https://crates.io/crates/neo3
- GitHub: https://github.com/R3E-Network/NeoRust
๐ฏ Use Cases
๐ข Enterprise Applications
- DeFi Platforms: Build decentralized finance applications
- Asset Management: Tokenize and manage digital assets
- Supply Chain: Track products on the blockchain
- Identity Solutions: Decentralized identity management
๐จโ๐ป Developer Tools
- dApp Development: Build decentralized applications
- Smart Contract Testing: Comprehensive testing frameworks
- Blockchain Analytics: Monitor and analyze blockchain data
- Integration Services: Connect existing systems to Neo
๐ฎ Gaming & NFTs
- Game Asset Management: In-game item tokenization
- NFT Marketplaces: Create and trade digital collectibles
- Metaverse Integration: Virtual world asset management
- Creator Tools: Content creator monetization platforms
๐ Getting Started
1. Choose Your Interface
๐ฅ๏ธ Desktop GUI (Recommended for Users)
&&
๐ป Command Line (Recommended for Developers)
๐ Rust Library (Recommended for Integration)
[]
= "0.3.0"
2. Create Your First Wallet
GUI Method:
- Open the Neo N3 Wallet application
- Click "Create Wallet"
- Follow the secure setup wizard
- Start managing your Neo assets
CLI Method:
SDK Method:
use *;
let mut wallet = new;
wallet.set_name;
let account = create?;
wallet.add_account;
3. Connect to Neo Network
GUI:
- Network selector in the top navigation
- Real-time connection status
- Automatic health monitoring
CLI:
SDK:
let provider = new?;
let client = new;
let block_count = client.get_block_count.await?;
๐ง Advanced Usage
๐ ๏ธ Troubleshooting
Common Build Issues
If you encounter build errors, especially related to yubihsm or MockHsm, see our Build Configuration Guide for solutions.
Quick fix for MockHsm release build error:
# Use the mock-hsm feature only for development
Getting Help
- Documentation: Build Configuration Guide
- Issues: GitHub Issues
- Discussions: GitHub Discussions