About HouseLive
HouseLive provides near-real-time access to Australian House of Representatives proceedings through live minutes, live captions, and daily program tracking. Past sitting days link directly to official records including Hansard, Votes and Proceedings, and ParlView replays.
Live Minutes
The minutes view scrapes and displays the official live minutes published by the Department of the House of Representatives during sitting days. These are the same draft minutes available on the APH website, reformatted for easier reading.
- Polls the APH cache endpoint every 60 seconds (20 seconds during Question Time) for changes
- Parses the live minutes HTML through an 11-step cleaning pipeline
- Matches current proceedings against the daily program sidebar
- Supports both House of Representatives and Federation Chamber
- Draft minutes available during the current sitting week; past weeks link to official records
Live Captions
The captions view captures closed captions from Parliament's own live video broadcast for both the House of Representatives and Federation Chamber. These are AI-generated captions produced by Parliament's broadcasting service — not generated by HouseLive.
- Discovers live streams via the APH ParlView API
- Extracts WebVTT subtitle segments from Parliament's HLS video stream hosted on Azure CDN
- Deduplicates rolling captions (each update adds a word) into clean readable text
- Detects speaker changes via caption colour codes in the broadcast stream
- Both House and Federation Chamber streams polled independently
- Handles HLS chunk switching for long sitting days (chunks roll over every ~6 hours)
- Live captions available during the current sitting week
Sitting Calendar
The sitting calendar is sourced from the official APH Sitting Calendar (iCal format). Date ranges are expanded into individual sitting days and filtered for House of Representatives and both-chambers sittings.
Daily Program
The daily program is scraped from ParlInfo and displayed alongside the minutes. It includes the Matter of Public Importance (MPI) when available (usually after midday). PDF previews of the daily program are rendered using MuPDF WASM.
Limitations
- Minutes are draft records and may differ from the final Votes and Proceedings
- Captions are AI-generated by Parliament's service and may contain errors
- Speaker changes in captions are detected by colour codes, not by name
- There may be gaps during sitting breaks, adjournments, or service interruptions
Data Sources
- Live minutes - APH Live Minutes
- Live captions - APH ParlView (HLS closed captions)
- Daily program - ParlInfo
- Sitting calendar - APH iCal
Technology
Built with Next.js (React), TypeScript, and Tailwind CSS. Data is stored in SQLite with Drizzle ORM. Deployed on Fly.io (Sydney region).