README du dépôt
SplitLoop
Application web simple et moderne pour partager les depenses de groupe en quelques secondes.
- Version: 1.2.0
- Auteur: CedricPoint
- Soutien: buymeacoffee.com/cedricpoint
- Slogan: On partage, pas les galeres
Nouveautes (v1.2.0)
- Design de la landing upgrade (topbar, badges, feature cards, footer)
- Liens directs vers GitHub et page de don dans l'interface
- Bouton Quitter la room pour oublier la room locale facilement
- Suppression definitive d'une room depuis l'onglet Parametres
- Validation front renforcee (messages clairs avant envoi)
- Route favicon corrigee (plus de 404 inutile)
- Logs console plus propres sur Windows (
--no-use-colors)
Apercu
SplitLoop cible un probleme tres frequent: "qui a paye quoi" en voyage, en colocation, ou lors de sorties en groupe.
Le principe:
- Tu crees une room en 30 secondes.
- Tu partages le code room dans ton groupe.
- Chacun ajoute les depenses.
- L'application calcule automatiquement les balances.
Fonctionnalites V1
- Creation d'une room (nom, devise, participants)
- Rejoindre une room avec un code court
- Ajout de participants a la volee
- Ajout de depenses avec repartition personnalisable
- Dashboard des balances (paye, doit, net)
- Historique complet des depenses
- Export CSV
- Parametrage de la devise par room
- Logs applicatifs
- Quitter la room locale en 1 clic
- Supprimer une room (et ses donnees) en 1 clic
Stack technique
- Frontend: HTML + CSS + JavaScript (sans build complexe)
- Backend: FastAPI
- Base de donnees: SQLite
- Validation: Pydantic
- Packaging: PyInstaller (Windows) + Docker (serveur web)
Architecture
/app # Entree FastAPI
/backend # Routes API, services metier, acces DB
/frontend # Interface utilisateur (HTML/CSS/JS)
/core # Schemas et contrats de donnees
/utils # Logging + sanitation
/config # Configuration applicative
/data # SQLite + logs
/tests # Tests API
/scripts # Scripts d'installation, run, build
Installation rapide (Windows)
Prerequis:
- Windows 10/11
- Python 3.11+
Depuis la racine du projet:
install.bat
scripts\run.bat
Puis ouvre: http://localhost:8000
Installation (Linux / macOS / Git Bash)
chmod +x install.sh scripts/run.sh
./install.sh
./scripts/run.sh
Tests
python -m pip install -r requirements-dev.txt
python -m pytest -q
Packaging
1) Executable Windows (.exe)
scripts\build_exe.bat
Sortie: dist\splitloop.exe
2) Deployment web (Docker)
docker build -t splitloop .
docker run --rm -p 8000:8000 splitloop
Securite (niveau V1)
- Validation stricte des entrees (Pydantic)
- Sanitization de texte utilisateur
- Requetes SQL parametrees (anti injection)
- Gestion centralisee des exceptions (
422,404,409,500) - Logs applicatifs dans
data/logs/app.log
Captures d'ecran
Ajoute tes screenshots dans docs/screenshots/:
docs/screenshots/landing.pngdocs/screenshots/dashboard.pngdocs/screenshots/history.png
Exemple Markdown:

API
- Swagger:
http://localhost:8000/api/docs - ReDoc:
http://localhost:8000/api/redoc - Healthcheck:
GET /api/health - Suppression room:
DELETE /api/rooms/{room_code}
Depannage rapide
- Si
install.bataffiche du rouge, relance-le et copie les 15 dernieres lignes. - Si le serveur ne part pas, verifie que
.venvexiste puis relancescripts\run.bat. - Si besoin, reinstalle proprement:
rmdir /s /q .venv
install.bat
Contribution
- Fork/clone
- Branche feature (
git checkout -b feature/ma-feature) - Commit
- Pull request
Push de la mise a jour sur GitHub
Depuis la racine du projet:
git status
git add .
git commit -m "release: v1.2.0 add room deletion, UX polish, and README update"
git push
Si c'est un nouveau repo local:
git init
git add .
git commit -m "init: SplitLoop v1.2.0"
git branch -M main
git remote add origin https://github.com/CedricPoint/splitloop.git
git push -u origin main
Licence
MIT
