XA
Xavier Affringue
En développementFull Stack2026

Previsia

Clone de RCA Prévisionnel — SaaS de prévisionnel financier pour porteurs de projet et experts-comptables.

Previsia

Détails du projet

Statut
En développement
CatégorieFull Stack
Année2026
Type de développementFull Stack
Fonctionnalités
7
Pages développées
7
Technologies utilisées
33
Stack principale
Frontend:Next.js 16 (App Router)+ Tailwind CSS v4
Backend:Node.js+ Next.js 16 (Server Actions, Route Handlers)
Database:PostgreSQL+ Prisma
Deploy:Vercel

Projet similaire ?

Ce projet vous inspire ? Discutons de votre idée !

Contactez-moi

Vue d'ensemble

Objectifs, défis relevés et statistiques du projet

Objectifs

Reproduire les mécanismes et la logique métier du logiciel RCA Prévisionnel sous forme de SaaS web accessible à tout porteur de projet souhaitant construire un prévisionnel financier complet et bancable sans expertise comptable.

Défis relevés

Implémenter un moteur de calcul financier exhaustif (CR, bilan, BFR, trésorerie mensuelle, SIG, CAF, IS, TVA, emprunts…) entièrement côté client, en garantissant la cohérence des séries temporelles mensuelles sur 1 à 3 exercices. Le moteur de paie a nécessité de modéliser finement la réglementation Urssaf, Agirc-Arrco et TNS 2026, avec gestion des exonérations par type de contrat.

33
Technologies
7
Fonctionnalités
2026
Année

Fonctionnalités

Principales fonctionnalités développées dans ce projet

Un moteur de calcul financier pur TypeScript (`buildFinCalc`) tourne entièrement côté client via `useMemo`. Toute modification d'une hypothèse recalcule instantanément l'ensemble du modèle (CR, bilan, BFR, trésorerie, IS…) sans aucun appel réseau.
Compte de résultat prévisionnel, SIG, budget de trésorerie, CAF, seuil de rentabilité, BFR, tableau de financement, plan de financement, bilan, ratios financiers, trésorerie mensuelle, TVA, synthèse et dashboard KPI — tous calculés côté client.
Formulaires métier complets pour modéliser un prévisionnel : hypothèses de CA avec saisonnalité, charges fixes/variables, investissements avec amortissements automatiques, financement avec échéancier, masse salariale, IS/IR/TVA, et divers flux de trésorerie.
Simulateur de bulletin de salaire couvrant CDI, CDD, apprentissage, contrat pro et stage. Calcul des cotisations Urssaf, Agirc-Arrco, prévoyance, PAS, TNS, exonérations par type de contrat et régime Alsace-Moselle, basé sur les paramètres réglementaires 2026.
Gestion de l'impôt sur les sociétés (IS taux plein et réduit), de l'IR pour les régimes transparents, de la TVA (mensuelle/trimestrielle), des cotisations sociales TNS et des charges patronales — tous intégrés dans le modèle financier global.
Export des données en Excel (ExcelJS), PDF et JSON/CSV pour le bulletin de paie. Diaporama intégré pour présenter le prévisionnel aux partenaires bancaires.
Création et gestion de plusieurs dossiers prévisionnels indépendants, avec paramétrage de la date de démarrage, de la durée de projection (1 à 3 exercices) et du régime fiscal.

Stack technique

Technologies et outils utilisés dans ce projet

Frontend

Langage:TypeScript
Frameworks:Next.js 16 (App Router)
Styling:Tailwind CSS v4
UI Libraries:shadcn/ui, Radix UI, Recharts
State Management:Zustand
Libraries:React Hook Form, Zod, @hookform/resolvers, date-fns, DnD Kit, Sonner, next-themes, lucide-react, clsx, tailwind-merge, class-variance-authority, cmdk

Backend

Langage:TypeScript
Runtime:Node.js
Frameworks:Next.js 16 (Server Actions, Route Handlers)
API Types:Server Actions
Libraries:ExcelJS, lodash

Base de données

Databases:PostgreSQL
ORM:Prisma

Outils

Tools:ESLint, Prettier, Vitest, tsx, pnpm

Déploiement

Platforms:Vercel

Détails techniques

Solutions techniques mises en œuvre dans ce projet

Architecture découplée : seules les données saisies sont persistées en DB (Prisma/PostgreSQL) ; tous les calculs financiers s'exécutent côté client en mémoire, éliminant tout stockage de résultats calculés.
`React.cache()` côté serveur déduplique les appels `fetchScenarioData` dans la même requête Node.js, consolidant ~32 requêtes Prisma parallèles (`Promise.all`) en un seul point d'entrée réseau.
Moteur de calcul `buildFinCalc` : fonctions pures et déterministes, modélisant des séries temporelles mensuelles (12 × N mois) avec saisonnalité, amortissements, échéanciers d'emprunts et accumulation de BFR.
Moteur de paie modulaire avec registre de paramètres réglementaires versionné par millésime (SMIC, PASS, taux Urssaf, Agirc-Arrco, RGDU, exonérations par type de contrat), extensible et testable unitairement via Vitest.
Store Zustand `useScenarioDataStore` comme unique point de chargement des données brutes ; les hooks de calcul par onglet (`useFinCalc`, `useBfrData`, `useCompteResultatData`…) consomment exclusivement ce store via `useMemo`.
Saisie pilotée par React Hook Form + Zod avec auto-sauvegarde debounced et invalidation ciblée du store sans rechargement global de page.