Add backend API for personal finance management application

- Introduced a comprehensive backend API using TypeScript, Fastify, and PostgreSQL.
- Added essential files including architecture documentation, environment configuration, and Docker setup.
- Implemented RESTful routes for managing assets, liabilities, clients, invoices, and cashflow.
- Established a robust database schema with Prisma for data management.
- Integrated middleware for authentication and error handling.
- Created service and repository layers to adhere to SOLID principles and clean architecture.
- Included example environment variables for development, staging, and production setups.
This commit is contained in:
2025-12-07 12:59:09 -05:00
parent 9d493ba82f
commit cd93dcbfd2
70 changed files with 8649 additions and 6 deletions

34
backend-api/package.json Normal file
View File

@@ -0,0 +1,34 @@
{
"name": "personal-finances-api",
"version": "1.0.0",
"description": "Backend API for Personal Finances application",
"module": "src/index.ts",
"type": "module",
"private": true,
"scripts": {
"dev": "bun run --watch src/index.ts",
"start": "bun run src/index.ts",
"db:generate": "prisma generate",
"db:push": "prisma db push",
"db:migrate": "prisma migrate dev",
"db:studio": "prisma studio"
},
"devDependencies": {
"@types/bcryptjs": "^3.0.0",
"@types/bun": "latest",
"prisma": "5.22.0"
},
"peerDependencies": {
"typescript": "^5"
},
"dependencies": {
"@fastify/cors": "^11.1.0",
"@fastify/jwt": "^10.0.0",
"@fastify/swagger": "^9.6.1",
"@fastify/swagger-ui": "^5.2.3",
"@prisma/client": "5.22.0",
"bcryptjs": "^3.0.3",
"fastify": "^5.6.2",
"zod": "^4.1.13"
}
}