Nox (OpenClaw) e3fac99045 feat: advanced features — dashboard, budgets, history, export
Backend:
- GET /api/v1/dashboard?month=YYYY-MM: KPIs, by_category, 6-month trend, budget alerts
- GET/POST/PUT/DELETE /api/v1/budgets: budget envelopes with spent_cents/remaining_cents
- POST /api/v1/budgets/rollover: copy budgets from M-1 to target month
- GET /api/v1/history?year=YYYY: monthly summary for the year
- GET /api/v1/export/csv|pdf?month=YYYY-MM: StreamingResponse exports (WeasyPrint PDF)
- New schemas: dashboard, budget, history
- Services: dashboard_service, budget_service
- Routers mounted in main.py

Frontend:
- DashboardPage: 4 KPI cards, PieChart (expenses by category), BarChart (6-month trend),
  month navigation, budget alert badges, CSV/PDF export buttons
- BudgetsPage: progress bars (green/orange/red), create/edit form, delete, rollover M-1
- HistoryPage: annual table with month click → dashboard, LineChart revenues/expenses
- CategoriesPage: list by type with create/edit/delete (was missing from Phase 2)
- TransactionsPage: added CSV/PDF export buttons
- App.tsx: full routing with ProtectedRoute + Layout for all authenticated pages
- New hooks: useDashboard, useBudgets (with mutations), useHistory
- API types + client updated for all new endpoints

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 16:48:26 +00:00
2026-03-17 15:20:50 +00:00
2026-03-17 15:20:50 +00:00
2026-03-17 15:20:50 +00:00

Budget Tracker

Application web de suivi de budget personnel.

Stack technique

  • Backend : FastAPI, SQLAlchemy 2.0 async, Alembic, PostgreSQL 16
  • Frontend : React 18, TypeScript, Vite, Tailwind CSS, shadcn/ui
  • Graphiques : Recharts
  • Export : CSV, PDF (WeasyPrint)

Démarrage rapide

# Copier et configurer les variables d'environnement
cp .env.example .env

# Lancer tous les services (dev avec hot-reload)
docker compose up

# Backend : http://localhost:8000
# Frontend : http://localhost:5173
# Health check : http://localhost:8000/health

Développement

# Linting backend
cd backend && ruff check .

# Tests backend
cd backend && pytest

# Format frontend
cd frontend && npm run format
S
Description
App web de suivi de budget personnel — FastAPI + React + PostgreSQL + Docker
Readme 15 MiB
Languages
TypeScript 40.2%
Python 35.6%
Shell 22%
Dockerfile 0.9%
JavaScript 0.6%
Other 0.7%