NovaWallet is a high-fidelity, mobile-first crypto wallet interface built as a modular TypeScript monorepo. It demonstrates the complete product surface of a modern self-custody wallet with realistic in-memory data—without connecting to real chains or handling real funds.
- Multi-wallet portfolio and token activity
- Send, receive, buy, sell, swap, and cross-chain flows
- Markets, interactive charts, and trading screens
- DApp discovery, browser, scanner, and WalletConnect screens
- NFT gallery and marketplace
- Earn products, launchpad, campaigns, news, and rewards
- Wallet creation, import, MPC, and hardware-wallet onboarding
- Security, backup, network, token, device, and approval settings
The app uses a Bun workspace split into focused packages under packages/. Shared domain types, in-memory Remult data, and UI primitives sit below independent wallet, market, trade, swap, DApp, NFT, earn, growth, and settings features.
Built with React 19, TanStack Start, Remult, Tailwind CSS, Vite, and TypeScript.
Requirements: Bun 1.2 or newer.
git clone https://github.com/uu-z/novawallet.git
cd novawallet
bun install
bun run devCreate a production build with:
bun run buildDeploy the Cloudflare Worker with:
bun run deployNovaWallet is a front-end product prototype. Its balances, transactions, market data, credentials, and blockchain operations are simulated in memory. Do not use it to store keys, sign transactions, or manage real assets.
