You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FinSpirit est une application web de gestion de budget personnelle. Elle permet de suivre ses revenus et dépenses, de définir des budgets par catégorie, de planifier des objectifs d'épargne et de gérer ses échéances (loyer, factures, abonnements).
L'application est pensée pour un usage en FCFA et propose une interface moderne, responsive (desktop + mobile).
Le frontend communique avec le backend via http://localhost:5000/api/...
L'authentification repose sur un cookie token (JWT) envoyé avec withCredentials: true
La base de données est hébergée sur Neon (PostgreSQL serverless)
---
## Prérequis
- **Node.js** 20+
- **npm**
- Compte **[Neon](https://neon.tech)** (PostgreSQL gratuit)
- Compte **Gmail** avec mot de passe d'application (pour l'OTP mot de passe oublié)
- **Docker Desktop** (optionnel, pour lancer via conteneurs)
---
## Installation locale
### 1. Cloner le dépôt
```bash
git clone https://github.com/crabmites-dev/FinSpirit.git
cd FinSpirit
2. Backend
cd backend
npm install
cp .env.example .env # puis remplir les valeurs (voir ci-dessous)
npm run db:init # créer les tables sur Neon (première fois)
npm run db:migrate # appliquer les migrations (si base existante)
npm run dev # démarre sur http://localhost:5000
3. Frontend
cd frontend
npm install
npm run dev # démarre sur http://localhost:5173
cd backend
npm run db:init # Crée toutes les tables (première installation)
npm run db:migrate # Met à jour une base existante (colonnes manquantes, renommages…)