Mine CRM AI · Documentation publique
Le périmètre réel, sans raccourci.
Cette synthèse s’appuie sur la codebase locale inspectée, ainsi que sur les guides d’architecture, d’API, de sécurité, de développement, de déploiement et d’utilisation fournis avec le projet.
Résumé
Mine CRM AI est une application SaaS multi-entreprises composée d’un frontend React et d’une API FastAPI. Elle couvre le cycle commercial complet et ajoute une assistance IA contextualisée, limitée et désactivable.
- Statut
- Application fonctionnelle en local, actuellement en pause.
- Type
- Projet fondateur, sans client revendiqué.
- Code public
- Le dépôt configuré n’est pas publiquement accessible.
Architecture
Navigateur
React 19 · TypeScript · Vite · Tailwind
↓ HTTPS / JSON
FastAPI → services → repositories → SQLAlchemy
↓ ↘
PostgreSQL OpenAI Responses APILe frontend conserve le jeton d’accès uniquement en mémoire. L’API détermine l’entreprise depuis l’utilisateur authentifié et contrôle les ressources avant toute lecture, mutation ou transmission de contexte à l’IA.
Cycle commercial
Prospect → Client → Devis → Facture → Paiement
↘ ↘ ↘ ↘
recherche, catalogue, reporting et copilote- Qualification et conversion atomique des prospects.
- Gestion des clients, produits et services forfaitaires ou horaires.
- Devis composés de lignes produit ou service avec prix historique.
- Facture unique issue d’un devis, échéance et paiements partiels ou complets.
- Dashboard et rapports sur 6 ou 12 mois.
Assistant et copilote IA
- Questions contextualisées sur les données du CRM.
- Recherche locale de clients sans coût OpenAI.
- Génération de brouillons d’e-mails sans envoi automatique.
- Résumé de l’historique disponible d’un client.
- Copilote global adapté à la page et à l’entité active.
- Quotas journaliers, budget mensuel, limites d’entrée, de contexte et de sortie.
- Les actions sensibles restent en mode proposition et ne sont pas exécutées silencieusement.
Sécurité documentée
- Isolation stricte des entreprises, y compris pour les ressources indirectes et l’IA.
- Access JWT court en mémoire et refresh token opaque rotatif dans un cookie HttpOnly.
- Protection CSRF par double valeur cookie/en-tête et contrôle d’origine.
- Sessions persistées, révocables, avec détection de réutilisation d’un ancien refresh token.
- Mots de passe Argon2id et migration progressive des anciens hashes bcrypt.
- Vérification d’e-mail, récupération à usage unique, limites de tentatives et événements de sécurité.
- Secrets exclusivement côté backend et documentation OpenAPI désactivée en production.
API métier
L’API déclarée en version 1.0.0 expose des routes pour l’authentification, les entreprises, clients, prospects, produits, services, devis, factures, paiements, dashboard, rapports et fonctions IA.
- Contrats
- JSON UTF-8 validé avec Pydantic.
- Persistance
- SQLAlchemy 2, PostgreSQL et migrations Alembic.
- Pagination
- Pages, tailles bornées, recherche et tris autorisés côté serveur.
- Santé
- Endpoints live et ready, ce dernier vérifiant PostgreSQL.
Éléments vérifiés
- Codebase
- Backend FastAPI, frontend React, modèles, services, routes, tests et configuration de production inspectés.
- Documentation
- Architecture, API, sécurité, développement, déploiement et guide utilisateur présents.
- Interface
- Dix captures originales fournies ; cinq captures sans coordonnées sont publiées sur la page projet.
- Vidéo
- Un lien Loom a été fourni comme démonstration externe.
Limites connues
- Le projet fonctionne localement mais aucune production publique n’est revendiquée.
- La mémoire du copilote reste en RAM et impose un seul worker avant migration vers un stockage partagé.
- Plusieurs montants utilisent encore des nombres flottants ; une migration vers Numeric/Decimal est recommandée avant des exigences comptables strictes.
- Le modèle actuel ne propose pas encore un RBAC complet pour plusieurs employés d’une même entreprise.
- La présence des tests est vérifiée ; cette page ne prétend pas que toute la suite a été exécutée lors de cette publication.
- Mine CRM ne remplace ni un logiciel comptable certifié ni un coffre de documents sensibles.
