A production-grade neobank platform demonstrating fintech architecture with Go microservices.
Nivo is a portfolio project implementing a complete digital banking system. It demonstrates microservices architecture, double-entry accounting, and fintech domain patterns in a working, deployable application.
What it includes:
- 9 Go microservices with domain-driven boundaries
- Double-entry ledger with balanced journal entries
- JWT authentication with role-based access control
- React frontends for users and admins
- Full observability stack (Prometheus, Grafana)
Try it at nivomoney.com:
| Password | Balance | |
|---|---|---|
| raj.kumar@gmail.com | raj123 | ₹50,000 |
| priya.electronics@business.com | priya123 | ₹1,50,000 |
Admin access: Run make seed locally to generate admin credentials (see .secrets/credentials.txt).
All data is synthetic. No real money.
services/
├── identity/ # Auth, users, KYC
├── ledger/ # Double-entry accounting
├── wallet/ # Balance management
├── transaction/ # Transfers, payments
├── rbac/ # Roles & permissions
├── risk/ # Fraud detection
├── notification/ # Alerts, messaging
├── simulation/ # Test data generation
└── seed/ # Database seeding
gateway/ # API Gateway with SSE
frontend/
├── user-app/ # Customer React app
└── admin-app/ # Admin dashboard
- Go 1.24+
- Docker & Docker Compose
- Node.js 18+
git clone https://github.com/1mb-dev/nivomoney.git
cd nivomoney
cp .env.example .env
# Start all services (postgres, redis, microservices, gateway)
make dev
# Seed database with demo data
make seed
# Start frontend (separate terminal)
cd frontend/user-app && npm install && npm run devOpen http://localhost:5173 and login with demo credentials.
| Component | Technology |
|---|---|
| Services | Go 1.24, standard library net/http |
| Database | PostgreSQL 15 |
| Cache | Redis |
| Auth | JWT, bcrypt |
| Frontend | React 19, TypeScript, Vite, TailwindCSS 4 |
| Infrastructure | Docker Compose |
| Monitoring | Prometheus, Grafana |
- Double-entry ledger - Every transaction creates balanced debit/credit entries
- Idempotency keys - Safe retry handling for financial operations
- RBAC - Granular permissions with role hierarchies
- Circuit breakers - Fault isolation between services
- Event-driven - Async processing with durable queues
Full documentation: docs.nivomoney.com
| Category | Count |
|---|---|
| Microservices | 9 |
| API Endpoints | 77+ |
| Frontend Pages | 17 |
| Database Migrations | 23 |
This is a portfolio demonstration, not a production bank. It shows how a neobank would be built.
See CONTRIBUTING.md for development setup and guidelines.
MIT - see LICENSE