Highlights
This release ships a completely new homepage — an immersive, map-first landing where you explore council subjects directly on the map — and rebuilds /explain into a long-form, deep-linkable guide to how Greek local government works, now with live coverage and pricing.
What's New
- Map-first landing page — the homepage is now an immersive interactive map. Browse subjects geographically, search and filter, open subject cards, switch basemaps, and locate yourself, with a refreshed mobile header. The previous landing moved to
/old-landing. (#534, #538) /explainguide to Greek local government — a single-page, server-rendered (fully indexable) guide in ten stacked sections, with a sticky table of contents, scroll-spy that keeps the URL hash in sync, and deep-linkable/shareable sections. (#400)- Coverage, pricing & CTA on
/explain— a dynamic per-city × administrative-body coverage table, pricing derived from the pricing config, a "Νέος κώδικας" callout, and a "Bring OpenCouncil to your municipality" CTA banner, reorganized into a two-part structure. (#539)
Changes
- Subject pages now show the decision (απόφαση) box above the summary, so the outcome is visible first. (#529)
- Map supports basemap switching and a cooperative-gestures option.
- Subject ranking generalizes the discussion signal and ranks non-located subjects together with located ones.
- Map feature links on
/explainand/aboutnow point to the landing page (where the interactive map now lives).
Fixes
/explaincoverage table excludes future pre-published meetings, formats dates in each city's own timezone (avoiding hydration/locale drift), and is cached (15 min) to avoid per-request scans. (#539)- Nix offline builds now resolve
@posthog/cliby repacking it. (#531)
Internal
- Local setup no longer requires
BIRD_API_KEYorCRON_SECRET. (#536) - New landing map data layer, API endpoints, clustering, analytics, and
landingV2i18n (el/en/fr). test-backupskill gains an S3 fetch mode.- Retired deprecated Copilot prompts and Cursor rules.