Christian Hood 35f9be4b02 Add monthly summary and annual overview (Phase 4)
Monthly summary:
- GET /api/summary/monthly returns income, bills, actuals, one-time
  expense totals and surplus/deficit for a given month
- MonthlySummary page shows stat cards and breakdown table

Annual overview:
- AnnualOverview page fetches all 12 months in parallel via Promise.all
- Year navigation, summary cards, monthly table with totals row
- Fix: normalize nested API response to flat fields expected by component

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 19:16:08 -04:00
2026-03-19 19:15:25 -04:00
2026-03-19 19:09:51 -04:00
2026-03-19 19:02:17 -04:00
Description
No description provided
432 KiB
Languages
JavaScript 91.4%
CSS 8.2%
Dockerfile 0.3%
HTML 0.1%