parlhub: Swiss and Liechtenstein parliamentary data
parlhub is a data portal for the parliaments of Switzerland and the Liechtenstein Landtag. Members of parliament, votes, speeches, affairs, documents, texts, committees, parliamentary groups, meetings, organizations and interests are shown as searchable, filterable tables.
All data comes from OpenParlData.ch, which collects the official parliamentary records, cleans them and publishes them as open data under CC BY 4.0.
Features
- Charts. Voting alignment, party loyalty, lobby networks and vocabulary maps, computed from the records and drawn as heatmaps, scatter plots, network graphs and treemaps.
- Chart export. Each chart downloads as an image with title, legend and source credit.
-
Data export. Every table exports to JSON, CSV or XLSX, from a button or a scriptable URL, for example
/votings/export/votings/csv. - WebMCP. Data pages expose tools to browser-based AI agents via @mcp-b, to filter a list and export it.
- schema.org. Every page includes schema.org structured data as JSON-LD.
Further info
- OpenParlData.ch, the data source
- Source on GitHub
Tech stack
- React frontend library
- React Router fullstack framework, server-side rendering
- DuckDB embedded analytical database, read-only
- Tailwind CSS styling
- TypeScript server and client
- WebMCP (@mcp-b) in-browser tools for AI agents
- AWS hosting, computing and storage
- SST configuration and deployment to AWS




