Skip to content

Budgeti in the Backend

  • Provide reliable financial CRUD and aggregate analytics over versioned REST routes.
  • Enforce auth, rate limiting, request validation, and centralized error mapping.
  • Keep domain logic isolated from framework details using layered architecture and DI.
  • This docs site is backend-first because backend is the component ready for deep technical documentation.
  • Full product context is included so implementation decisions stay aligned with the mobile app vision.
  • Intended readers are developers and technical collaborators onboarding into the current codebase.
  • Current MVP AI: receipt OCR capture assistant and voice-command transaction entry.
  • Roadmap direction: evolve from capture-only assistance toward deeper, more agentic finance insights.
  • Product goal: become an integral app where people centralize finances.
  • API base: /api/v1.
  • Health endpoint: GET /health.
  • Protected modules use Bearer JWT via middleware.
  • Runtime: Node.js + TypeScript + Express 5.
  • Data: Prisma 7 + PostgreSQL.
  • Validation: Zod.
  • DI: Inversify container.
  • Testing: Vitest + Supertest.
  • AI integrations: OpenAI-based OCR and voice parsing.
  • App bootstrap: backend/src/app.ts.
  • Route registration: backend/src/Presentation/Routes/Index.ts.
  • Dependency container: backend/src/Containers/inversify.config.ts.