How adamdkr/projet-1-edl works
Partage de frais is a Flask web application for tracking shared trip expenses and balances. A browser user can create accounts and trips, add members and shared expenses, then view balances and suggested repayments; the REST API exposes the same core operations. The graph separates request handling, business rules, persistence, and the web interface. The README documents major capabilities, while some implementation details (including templates, schema, and settlement call paths) were not sampled, so those links are omitted or marked unverified.
Main entry points: app.py Flask web app · routes.py REST API · services.py Expense validation · database.py SQLite access
Components 12
Web interface
- Web pages
frontend/templates - Client interactions
frontend/static/js/app.js
Request handling
- Flask web app
backend/app.py - REST API
backend/routes.py
Expense domain
- Trips and accounts
backend/services.py - Expense validation
backend/services.py - Balance calculation
backend/services.py - Repayment suggestions
backend/services.py
Persistence
- SQL repository
backend/repository.py - SQLite access
backend/database.py - Database schema
db/schema.sql
Other components
- Browser user
Connections 18
- Browser user → Web pages: uses
README.md - Flask web app → Web pages: renders
backend/app.py - Flask web app → Client interactions: serves assets
backend/app.py - Browser user → REST API: sends requests
- Flask web app → REST API: registers routes
backend/app.py - Flask web app → Trips and accounts: calls
backend/app.py - Flask web app → Expense validation: calls
backend/app.py - Flask web app → Balance calculation: calls
backend/app.py - REST API → Trips and accounts: calls
backend/routes.py - REST API → Expense validation: calls
backend/routes.py - REST API → SQLite access: opens transactions
backend/routes.py - Flask web app → SQLite access: opens transactions
backend/app.py - Trips and accounts → SQL repository: queries and writes
backend/services.py - Expense validation → SQL repository: writes expenses
backend/services.py - Balance calculation → Expense validation: uses expense data
backend/services.py - SQLite access → Database schema: initializes from
backend/database.py - SQL repository → SQLite access: uses connection
- Balance calculation → Repayment suggestions: feeds balances
backend/services.py