From 910e48f85fe8e58b94fd74ba943914160e2f3b9f Mon Sep 17 00:00:00 2001 From: Daniel Allaire Date: Wed, 10 Jun 2026 19:58:41 -0400 Subject: [PATCH] =?UTF-8?q?README=20orient=C3=A9=20partage=20:=20accroche,?= =?UTF-8?q?=20personas,=20d=C3=A9marrage=20rapide,=20r=C3=A9f=C3=A9rences?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- README.md | 118 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 82 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 5ba0b07..53b9a27 100644 --- a/README.md +++ b/README.md @@ -1,65 +1,104 @@ -# Gestionnaire d'immobilisations fiscales +# Mon Registraire -Outil de gestion d'actifs pour les PME québécoises / canadiennes. -Produit les intrants pour les déclarations fiscales (Annexe 8 / Schedule 8, CO-17) -et maintient un inventaire d'équipements défendable devant un auditeur. +**Registre d'immobilisations fiscales pour PME canadiennes.** +Calcule la DPA, produit l'Annexe 8 / Schedule 8, et maintient une piste d'audit défendable — pour le dirigeant, son CPA et son auditeur. -> **Avis** : Les calculs DPA/FNACC sont structurellement corrects mais indicatifs. +Licence MIT · Python 3.10+ · Fonctionne hors ligne · Données sur votre machine + +> Les calculs DPA/FNACC sont structurellement corrects mais indicatifs. > Toute déclaration fiscale doit être validée par un CPA autorisé. --- -## Lancement +## Le problème qu'il résout -Requiert Python 3.10+ ([python.org](https://www.python.org/downloads/)). +Les PME canadiennes avec un parc d'actifs significatif tombent dans un vide : trop petites pour un ERP, trop complexes pour un chiffrier Excel. Résultat : un registre DPA bricolé, refait à chaque exercice, sans lien avec l'inventaire physique. -**Mac / Linux** — dans un terminal : +**Mon Registraire** comble ce vide. Il remplace le chiffrier, pas le CPA. + +--- + +## Trois vues. Un seul registre. + +| Vue | Pour qui | Ce qu'on y trouve | +|---|---|---| +| **Propriétaire** | Dirigeant | VNC, coût de remplacement, statut opérationnel, barre d'amortissement | +| **CPA** | Comptable | FNACC fiscale, base capitalisable, catégorie DPA, perte finale / récupération | +| **Auditeur** | Vérificateur | Numéro de série, fournisseur, facture jointe, piste d'audit horodatée | + +--- + +## Démarrage en 2 minutes + +Requiert Python 3.10+ · [python.org](https://www.python.org/downloads/) + +**Mac / Linux** ```bash +git clone https://github.com/votre-compte/monregistraire +cd monregistraire ./lancer.sh ``` -**Windows** — double-clic sur `lancer.bat` +**Windows** +``` +Double-clic sur lancer.bat +``` -L'environnement Python est créé automatiquement à la première utilisation. -Les données sont conservées dans le dossier `data/` du projet. +Le venv Python est créé automatiquement. L'interface s'ouvre sur `http://localhost:8000`. +Cliquez **Données démo** pour voir l'outil en action immédiatement. --- -## Ce que l'outil produit +## Fonctionnalités -| Vue | Pour qui | Contenu | -|---|---|---| -| **Propriétaire** | Dirigeant | VNC linéaire, coût de remplacement, statut, barre d'amortissement | -| **CPA** | Comptable | FNACC fiscale (décroissante), base capitalisable, catégorie DPA | -| **Auditeur** | Inspecteur | Numéro de série, fournisseur, facture, piste d'audit horodatée | +**Fiscal** +- Registre pool DPA multi-catégories, multi-exercices (Cat. 8, 10, 12, 46, 50…) +- DPA dégressive, règle de la demi-année (Règl. 1100(2)) +- Perte finale (LIR 20(16)) et récupération (LIR 13(1)) détectées automatiquement +- Annexe 8 / Schedule 8 avec export CSV +- Rapport fiscal HTML — lignes T2 (104/107/410/414) et CO-17 (130/135/150/155) -### Fonctions fiscales -- Registre pool par catégorie DPA (Cat. 50, 46, 8, 12, 10…) -- Annexe 8 / Schedule 8 multi-catégories avec export CSV -- FNACC indicative par pièce (taux dégressif + règle demi-année) -- Amortissement linéaire indicatif par pièce (usage comptable) - -### Fonctions d'inventaire +**Inventaire** - Modèle à deux niveaux : immobilisation fiscale → pièces composantes -- Porteur d'étiquette : une pièce porte le tag, les autres l'héritent -- Piste d'audit complète sur chaque actif (toutes modifications horodatées) -- Coût de remplacement pour assurances et budgets +- Factures jointes par pièce (PDF/JPG/PNG, jusqu'à 20 Mo) +- Piste d'audit complète et horodatée sur chaque actif +- Sauvegardes horodatées, restauration en un clic + +**Interface** +- Mobile-first : fonctionne sur téléphone et tablette +- Données démo prêtes à l'emploi (6 immobilisations, 5 catégories, cas de perte finale et récupération) +- Guide utilisateur intégré (11 sections) --- -## Structure +## Références législatives + +Les algorithmes sont documentés et référencés directement dans le code source : + +- [LIR art. 13](https://laws-lois.justice.gc.ca/fra/lois/I-3.3/section-13.html) — FNACC, récupération +- [LIR art. 20](https://laws-lois.justice.gc.ca/fra/lois/I-3.3/section-20.html) — DPA, perte finale +- [Règl. art. 1100](https://laws-lois.justice.gc.ca/fra/reglements/C.R.C.,_ch._945/section-1100.html) — méthode dégressive, demi-année +- [Guide T2 (T4012)](https://www.canada.ca/fr/agence-revenu/services/formulaires-publications/publications/t4012.html) — Annexe 8 / Schedule 8 + +--- + +## Structure du projet ``` app/ - main.py Routes FastAPI - store.py Persistance SQLite + calculs - accounting.py Comptabilité de détachement (journal) - cca_registry.py Registre pool DPA - cca_pool.py Calculs pool CCA + main.py 28 routes FastAPI + store.py AssetStore — SQLite, modèle parent/pièce, 3 vues + cca_registry.py Registre pool DPA par catégorie + cca_pool.py Mécanique fiscale (demi-année, perte finale, récupération) + accounting.py Écritures comptables au détachement static/ - index.html Interface React + index.html SPA React/Babel — interface mobile-first + aide.html Guide utilisateur (11 sections) + apropos.html À propos — intention, personas, capacités, limitations +tests/ + test_api.py 50 tests pytest — 100 % verts data/ - immos.db Base de données (créée au premier lancement) + immos.db Base SQLite (créée au premier lancement) ``` --- @@ -69,5 +108,12 @@ data/ ```bash python3 -m venv .venv .venv/bin/pip install -r requirements.txt -.venv/bin/uvicorn app.main:app --reload --port 8001 +.venv/bin/uvicorn app.main:app --reload +.venv/bin/pytest tests/ -v ``` + +--- + +## Licence + +[MIT](LICENSE) — libre d'utilisation, de modification et de distribution, y compris à des fins commerciales.