Design Details
Design intent: Convert scattered public records into a consistent, searchable, multi-year dataset that improves traceability and civic understanding.
1) Core Data Model
The app is built around a row-level “Minutes / Records” table. Each row is a discrete entry tied to a meeting via Meeting ID.
- ID (unique), Meeting ID, Date, Meeting Type
- Authority (name/code), Speaker, Role
- Cleaned Dialogue/Action, Topic/Keywords, Context/Notes
- Validation/Minutes Reference and Source/PDF/URL (when available)
2) Navigation Architecture
- Primary entry: searchable list/table of records
- Primary controls: search + filters (year, topic, speaker, authority)
- Detail view: expands context, validation, and sources
- Meeting-level grouping via Meeting ID supports deeper context review
3) Search & Tagging Strategy
Keyword normalization is used to track topics across time even as meeting language changes.
- Topic/Keywords (controlled categories for consistency)
- Additional Keywords (flexible tagging)
- Cleaned Dialogue/Action preserves meaning while improving readability
4) Validation & Transparency
- Source references are included when available
- Summaries are not official transcripts
- Dataset supports incremental improvement and correction over time
5) Permissions Philosophy
Designed for public research access with dataset integrity protected by restricting edits to authorized maintainers.
6) Mobile & Performance Priorities
- Mobile-first readability and scannable fields
- Filter-first workflow to reduce loaded records
- Context pushed into detail views to avoid list clutter
7) Expansion Path
The design supports future modules (budgets, capital projects, personnel timelines, authority dashboards) while keeping the same backbone: structured records + traceable sources + consistent tagging.
Good implementation emphasizes consistency, neutral summaries, traceable sources, and a stable keyword taxonomy year-to-year.