antragstracker/backend
Dotty Dotter c6291a285a feat: Globale Filter (Ratsperiode + Parteien) seitenübergreifend (#15)
Layout:
- Sticky Filter-Bar unter Navigation auf ALLEN Seiten
- Ratsperioden als Multi-Select Toggle-Buttons
- Parteien-Buttons mit Parteifarben aus DB
- Reset-Button bei aktiven Filtern

Backend:
- Shared utility tracker/core/perioden.py (Perioden-Mapping + Filter-Helper)
- GET /api/vorlagen: periode + parteien Parameter
- GET /api/ketten: periode + parteien Parameter
- GET /api/stats/dashboard: periode + parteien Parameter
- GET /api/fraktionen/{kuerzel}/dashboard: periode Parameter

Frontend:
- Shared reactive state (filters.svelte.ts) mit Svelte 5 Runes
- $effect() in allen Seiten reagiert auf Filteränderungen
- Dashboard, Vorlagen, Ketten, Abstimmungen, Fraktionen nutzen globale Filter
- Filter-Bar aus Abstimmungen entfernt (jetzt im Layout)

Closes #15
2026-04-01 14:58:10 +02:00
..
src/tracker feat: Globale Filter (Ratsperiode + Parteien) seitenübergreifend (#15) 2026-04-01 14:58:10 +02:00
tests feat: Initial commit — Antragstracker Hagen 2026-03-30 16:37:58 +02:00
requirements.txt feat: Initial commit — Antragstracker Hagen 2026-03-30 16:37:58 +02:00