Build blazingly fast, tiny blockchain applications that run natively on all major desktop and mobile platforms.
Krome is a framework for building blockchain applications that compile to tiny, native binaries for all major platforms. By leveraging Rust and advanced optimizations, Krome apps are typically under 10MB in size while delivering unmatched performance. It combines the best of modern development tools and frameworks:
- Tauri for secure native cross-platform applications
- Svelte 5 for performant, intuitive UI development
- TEVM for Ethereum Virtual Machine integration
- Deno (TODO) for secure JavaScript runtime
- Helios (optional) for trustless light client capabilities
What sets Krome apart is its uncompromising focus on both user experience and developer productivity. Through its opinionated framework, it delivers a polished, native feel for users while maximizing development speed and maintainability for developers.
- 🖥️ True Native Performance: Build once, run anywhere with Tauri's native capabilities
- 🔗 Blockchain-Ready: Pre-configured with TEVM for seamless blockchain integration
- 🔄 Multi-Language Support:
- 🎨 Performant UI:
- Faster than React-based alternatives
- Intuitive for blockchain and systems developers
- Simple, declarative syntax
- 📱 Mobile First: First-class mobile support out of the box
- 🔒 Security First:
- ⚡ Optimistic Updates: Built-in support for snappy UIs with optimistic operations
- 👛 Wallet Integration:
- Simple, secure wallet connection with broad provider support
- Built-in embedded wallet support for seamless onboarding
- Secure key management using the system's native keychain
- 🧪 Testing Ready: Comprehensive testing setup for all supported languages
- Deno 1.41 or later
- Rust toolchain
- Go 1.22 or later
- Node.js 20 or later (for npm packages)
- For iOS development: Xcode 15+
- For Android development: Android Studio Hedgehog+
Run app in dev mode
pnpm install
tauri dev
See tauri 2.0 docs for tauri specific information
App logic
- src/ contains the source code for the svelte app
- Svelte uses file based routing in src/routes folder
- Context to help your llm write svelte is in src/svelte.llm.txt
- src-tauri contains the rust code
- Rust code is binded to svelte app in src-tauri/lib.rs
Tauri specific files
- src-tauri/ contains the tauri config
- Additional configuration is in the capabilities file src-tauri/capabilities
Join our community to get help, share your projects, and contribute:
We welcome contributions! Please see our Contributing Guide for details.