Welcome to Rainbow
Rainbow is a fun, simple, and secure Ethereum wallet that makes managing your crypto and exploring web3 a joyful experience. Built with React Native, Rainbow is available on iOS, Android, and as a browser extension.Quick Start
Get your development environment ready with Node.js, Ruby, and required tools
Installation
Install dependencies and configure the project for development
iOS Setup
Configure Xcode, CocoaPods, and iOS-specific dependencies
Android Setup
Set up Android Studio, JDK, and Android development tools
What You’ll Build
Rainbow is a production-ready React Native application featuring:- Multi-platform Support: iOS, Android, and browser extension
- Modern Architecture: Custom state management with Zustand, React Navigation, and domain-driven design
- Blockchain Integration: Full Ethereum wallet functionality using ethers.js and viem
- Advanced UI: Reanimated animations, Skia graphics, and custom design system
- TypeScript First: Comprehensive type coverage with strict TypeScript configuration
Key Features
State Management
Custom store creators built on Zustand for client, server, and derived state
React Native 0.79
Latest React Native with React 19 and modern native modules
E2E Testing
Maestro-based end-to-end tests for iOS and Android
Type Safety
99%+ TypeScript coverage with ESLint enforcement
Performance
Optimized with Flash List, Skia rendering, and performance monitoring
Web3 Ready
WalletConnect, ENS, NFTs, and multi-chain support
Development Workflow
Once set up, your typical development workflow will be:Next Steps
Ready to get started? Follow our setup guides:- Prerequisites - Install Node.js, Ruby, and required tools
- Installation - Set up the project and dependencies
- Platform Setup - Configure iOS and/or Android development
- Running the App - Launch Rainbow on your device or simulator
Internal developers can use the
rainbow-me/rainbow-setup script to automate the entire setup process.Get Help
Have questions or need help?- Follow us on X (Twitter)
- Check the Architecture Guide to understand the codebase
- Review Development Best Practices