Logo Lanfrica

CoolCerebralTech/luru

Domain:

socioeconomic

Record type:

software
Creator:
Coo
Host:
Luru πŸ‡°πŸ‡ͺ β€” Kenya's Digital Succession Copilot. NestJS monolith + React 19 SPA. Readiness scores, family trees, estate inventory, and Kenyan Succession Act (Cap 160) compliance. # Luru πŸ‡°πŸ‡ͺ > Kenya's Digital Succession Copilot β€” from "kurithi" (Swahili: to inherit) Luru helps Kenyan families navigate estate planning, succession, and probate with clarity and compliance. Built around the Kenyan Succession Act (Cap 160), it guides users through family registration, estate inventory, and a Readiness Score that shows exactly what's needed to reach court-ready status. --- ## πŸ—οΈ Architecture | Layer | Stack | |-------|-------| | **Backend** | NestJS 11 monolith, Prisma 7, PostgreSQL 18 | | **Frontend** | React 19, Vite 7, Tailwind v3, TanStack Query v5 | | **Charts** | Recharts, ReactFlow (family tree) | | **Auth** | JWT + Refresh Tokens, argon2id hashing | | **Database** | Native PostgreSQL 18 (NOT Docker β€” SCRAM auth bug on Windows) | ### Why a monolith? The original codebase had 6 microservices (accounts, family, estate, succession, documents, messaging) with an API gateway, RabbitMQ, and OpenTelemetry. For an MVP, that's overkill. Everything was merged into a single NestJS app β€” one process, one database, zero ceremony. --- ## πŸš€ Quick Start ### Prerequisites - Node.js 24+ - PostgreSQL 18 (native install, not Docker) - npm ### Backend ```bash cd mirathi-backend # Install deps npm install # Generate Prisma client npx prisma generate # Create database & push schema npx prisma db push --schema libs/database/prisma/schema.prisma # Seed demo data (see libs/database/prisma/seed.sql or use the SQL below) # Option 1: Run the seed SQL via psql # Option 2: Use npx ts-node libs/database/prisma/seed.ts (requires working pg connection) # Configure .env cp .env.example .env # Edit DATABASE_URL=postgresql://luru:luru@localhost:5432/luru?schema=public # Build & run npx nest build node dist/main.js ``` The backend runs on `localhost` with Swagger docs at `/docs`. ### Frontend ```bash cd mirathi-frontend # Install deps npm install # Configure .env echo "VITE_API_BASE_URL=/api" > .env # Run dev server npx vite --host ``` The fr …

Languages