Integracja danych w czasie rzeczywistym
Stabilny sync z API Sejmu: cache, normalizacja i publikacja nowych głosowań bez luk w danych.
Realizacja
Civic-tech platforma pokazująca, jak posłowie Sejmu X kadencji głosowali — z wyszukiwaniem semantycznym i powiązanymi drukami sejmowymi.

Kontekst projektu
Kto Głosował udostępnia dane głosowań Sejmu w formie czytelnej dla obywateli, mediów i badaczy. Backend synchronizuje API Sejmu, Flutter i Next.js serwują explorer głosowań, a Pinecone umożliwia zapytania naturalne („klimat”, „edukacja”) zamiast numerów druków.
Od numeru druku do tematu — obywatel powinien rozumieć głosowania bez sejmowego żargonu.
Problemy, które trzeba było rozwiązać, zanim powstał produkt.
Stabilny sync z API Sejmu: cache, normalizacja i publikacja nowych głosowań bez luk w danych.
Mapowanie zapytań naturalnych na głosowania, posłów i druki przez embeddingi w Pinecone.
Wspólny model danych dla Flutter (BLoC) i Next.js — deep linki, share URL i spójne widoki szczegółów.
Automatyczne strony głosowań (np. /voting/35-4) z metadanymi OG, żeby dane były linkowalne dla mediów i Google.
Dane sejmowe w formie czytelnej dla obywateli — mobile, web i search.
Sprawdzanie głosowań posłów z rozbiciem na kluby i osoby, filtrami oraz wykresami. Widok szczegółu: podsumowanie, breakdown klubowy, indywidualne głosy i powiązane druki.

Druki sejmowe powiązane z głosowaniami przez ekstrakcję wzorców — kontekst ustawy obok wyniku głosowania.
Mikrousługi Node/Python synchronizujące API Sejmu — cache, normalizacja i publikacja nowych głosowań jako fundament pod web i mobile.
Pinecone: zapytania naturalne (klimat, budżet edukacji, aborcja) mapowane na głosowania, posłów i druki. Eksploracja tematyczna zamiast numerów ustaw.
Aplikacja Flutter (BLoC, wykresy, deep linki, share) oraz web Next.js z auto-generowanymi stronami głosowań, Open Graph i hybrid SSR/SSG pod SEO.
Jak dochodziliśmy do rozwiązania — krok po kroku.
Sync API Sejmu, model głosowań/posłów/druków, publikacja eventów dla klientów mobilnych i web.
Explorer we Flutterze, SEO pages w Next.js, warstwa semantic search i UX szczegółów głosowania pod mobile-first.
Efekt

Niezależnie od skali — pomożemy ustalić kierunek, zakres i technologię, które dają realny efekt.
Technologie w tym projekcie