Aller au contenu
Tous les projets

Web · Projet de groupe · M1 ISC

PerFin

Suivre ses finances personnelles

Capture d'écran de PerFin

Tableau de bord de budget avec une API Spring Boot et une interface React, à essayer sans créer de compte.

Le problème

Savoir où part son argent demande de rassembler plusieurs comptes bancaires et de ranger chaque dépense. Les relevés ne le font pas.

La solution

PerFin regroupe les transactions de plusieurs comptes et les classe par catégorie et sous-catégorie. Le tableau de bord donne le solde, les revenus, les dépenses et leur ratio sur la période choisie, avec deux graphiques : la répartition par catégorie et un diagramme de flux.

  • Comptes bancaires, sous-catégories et transactions modifiables
  • Filtre par compte et par période
  • Règles de cohérence : une dépense va dans une catégorie de dépenses, un compte ou une sous-catégorie encore utilisé ne se supprime pas
  • Mode sombre

Architecture

Trois conteneurs : l’interface React compilée, servie par Nginx, qui relaie les appels à l’API ; l’API Java/Spring Boot en lecture seule ; PostgreSQL, dont le schéma et les données de démonstration sont posés par des migrations Flyway. En production, ils tournent derrière le reverse proxy Caddy du serveur, qui gère le HTTPS.

En images

La répartition des dépenses par catégorie ; le survol d'une part détaille ses sous-catégories.
La répartition des dépenses par catégorie ; le survol d'une part détaille ses sous-catégories.
Le diagramme de flux suit l'argent des revenus vers les comptes, puis vers les dépenses.
Le diagramme de flux suit l'argent des revenus vers les comptes, puis vers les dépenses.
Chaque transaction se modifie ; une sous-catégorie inconnue est créée au moment de l'enregistrer.
Chaque transaction se modifie ; une sous-catégorie inconnue est créée au moment de l'enregistrer.