A monorepo containing starter templates for integrating Nimiq web client with different JavaScript frameworks. Learn how to build decentralized applications using the Nimiq blockchain in various popular web frameworks.
Nimiq is a browser-based blockchain and ecosystem that makes cryptocurrencies accessible to everyone. The Nimiq web client allows you to build decentralized applications directly in the browser using WebAssembly, without requiring any server-side infrastructure.
Pick your preferred framework and run one command to get started:
npx degit onmax/nimiq-starter/starters/vue-ts my-nimiq-app
cd my-nimiq-app && pnpm install && pnpm devnpx degit onmax/nimiq-starter/starters/react-ts my-nimiq-app
cd my-nimiq-app && pnpm install && pnpm devnpx degit onmax/nimiq-starter/starters/next-js my-nimiq-app
cd my-nimiq-app && pnpm install && pnpm devnpx degit onmax/nimiq-starter/starters/cloudflare-d1 my-nimiq-worker
cd my-nimiq-worker && pnpm install && pnpm devnpx degit onmax/nimiq-starter/starters/hub-api-ts my-nimiq-app
cd my-nimiq-app && pnpm install && pnpm devPerfect for: Modern reactive web apps with composition API
- ⚡️ Vite for lightning-fast development
- 🏷️ Full TypeScript support
- 🎨 Vue 3 Composition API with reactive Nimiq integration
- 📡 Real-time blockchain updates and consensus monitoring
- 🧪 Vitest for unit and browser testing
- 📝 ESLint + Prettier for code quality
Perfect for: Component-based web applications
- ⚡️ Vite-powered React 18 with TypeScript
- 🪝 Custom
useNimiqhook for blockchain state management - 🎨 Minimal Pico CSS styling
- 🧪 Browser testing with Vitest + Playwright
- 📱 Modern React patterns with hooks
Perfect for: Full-stack applications with SSR/SSG
- 🚀 Next.js with App Router
- 🏷️ TypeScript throughout
- 🌐 Server and client-side Nimiq integration
- 📦 Optimized bundling and WebAssembly support
Perfect for: Serverless blockchain APIs
- 🌩️ Cloudflare Workers runtime with D1 database
- 🪶 Lightweight pico sync mode
- 📡 Single
/block-numberAPI endpoint - ⚡️ Edge computing with WebAssembly support
Perfect for: Wallet integration and payments
- 🔐 Nimiq Hub API for secure wallet operations
- ⚡️ Vite for fast development
- 🏷️ Full TypeScript support
- 💳 Payment requests, message signing, address selection
- 🧪 Playwright browser tests with Vitest
- 📦 Zero framework dependencies
Try out the deployed starters:
Want to work with all templates or contribute? Clone the full repository:
git clone https://github.com/onmax/nimiq-starter.git
cd nimiq-starter
pnpm install
# Start all development servers
pnpm dev
# Build all starters
pnpm build
# Run tests across all projects
pnpm test
# Lint and format
pnpm lint
pnpm typechecknimiq-starter/
├── starters/
│ ├── vue-ts/ # Vue 3 + TypeScript starter
│ ├── react-ts/ # React + TypeScript starter
│ ├── next-js/ # Next.js starter
│ ├── cloudflare-d1/ # Cloudflare Workers starter
│ └── hub-api-ts/ # Hub API + TypeScript starter
├── package.json # Root workspace configuration
└── pnpm-workspace.yaml # pnpm workspace configuration
Want to see support for another framework? Open an issue and let us know!
Contributions are welcome! To add a new framework starter:
- Create a new directory in
starters/ - Set up your framework with proper Nimiq integration
- Include a demo component showing blockchain connectivity
- Add documentation and update this README
- Ensure all tests pass
MIT License