commit 3858e76859d128637c7cd1c3616c346d774290aa Author: root Date: Mon Jun 29 21:49:00 2026 +0000 first commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..1be9749 --- /dev/null +++ b/README.md @@ -0,0 +1,74 @@ +# JB — Compta Micro-Entreprise + +Application **Django** de gestion comptable pour micro-entreprise(s) française(s), +au-dessus de **PostgreSQL**. Complète Indy (qui garde devis + factures + suivi bancaire) +en gérant ce que sa version gratuite ne fait pas : saisie des ventes/dépenses, +calculs **TVA / URSSAF / impôt**, statistiques et **exports CSV**. + +Conçue pour évoluer : aucun taux n'est codé en dur (table `Bareme` par activité/année), +multi-entreprises, et logique fiscale en Python que tu contrôles. + +## Ce que ça fait + +- Saisie des **ventes** (factures) et **dépenses** via l'admin Django (formulaires auto). +- **CA HT encaissé**, suivi des plafonds micro et du seuil de franchise TVA. +- **Cotisations URSSAF**, **versement libératoire** et **TVA à reverser** calculés sur la base HT. +- **Tableau de bord** avec graphique mensuel + montants à provisionner. +- **Exports CSV** (ventes, TVA, URSSAF) pour tes déclarations. + +## Déploiement avec Portainer (recommandé) + +La base PostgreSQL est **externe** (la tienne) ; le conteneur ne contient que l'app (sans état). + +1. Dans Portainer → **Stacks** → **Add stack** → colle le contenu de `docker-compose.yml` + (ou pointe sur ce dépôt Git). +2. Renseigne les variables d'environnement (voir `.env.example`) : `DB_HOST`, `DB_NAME`, + `DB_USER`, `DB_PASSWORD`, `DJANGO_SECRET_KEY`, `DJANGO_ALLOWED_HOSTS`, + `DJANGO_CSRF_TRUSTED_ORIGINS`, et le compte admin `DJANGO_SUPERUSER_*`. +3. Mets `SEED_DEMO=1` au premier lancement pour charger les barèmes 2026 + données d'exemple + (repasse-le à `0` ensuite). +4. Déploie. Au démarrage le conteneur applique les migrations, crée l'admin, puis sert l'app. +5. Accède à `http://IP_DU_SERVEUR:8001` → `/admin/` pour saisir, `/dashboard/` pour les stats. + +> Prérequis côté PostgreSQL : crée la base (ex. `compta`) et un utilisateur ayant les droits dessus. +> Les **tables sont créées automatiquement** par les migrations Django (rien à exécuter à la main). + +## Lancer en local (développement) + +```bash +python -m venv .venv && source .venv/bin/activate +pip install -r requirements.txt +cp .env.example .env # renseigne DB_* (ou laisse vide pour SQLite de test) +python manage.py migrate +python manage.py seed_demo # barèmes 2026 + données d'exemple (optionnel) +python manage.py createsuperuser +python manage.py runserver +# http://127.0.0.1:8000/ +``` + +## Structure + +``` +JB - compta/ +├── manage.py +├── requirements.txt +├── Dockerfile / entrypoint.sh / docker-compose.yml # packaging Portainer +├── .env.example +├── config/ # projet Django (settings, urls, wsgi) +├── compta/ # application métier +│ ├── models.py # Entreprise, Client, Facture, Ligne, Depense, Bareme +│ ├── admin.py # formulaires de saisie +│ ├── services.py # calculs TVA / URSSAF / versement libératoire (base HT) +│ ├── views.py # dashboard + exports CSV +│ └── templates/compta/dashboard.html +└── docs/ + ├── regles-fiscales-2026.md # seuils & taux sourcés + ├── modele-donnees.md # description du schéma + └── deploiement.md # détails Portainer / mise à jour +``` + +## Avertissement + +Les taux et seuils sont ceux connus pour 2026 (voir `docs/regles-fiscales-2026.md`, +sourcé). Cet outil aide au suivi mais ne remplace pas un expert-comptable. +Vérifie toujours les chiffres officiels sur urssaf.fr et impots.gouv.fr.