Skip to content

Build approach — how this site was made

First-pass summary of the implementation to date, drawn from documents/audit/ and the specifications in documents/specifications/. This is builder documentation made readable for anyone using the site.

← Gaps & layers · Tracker dashboard → · Home


Starting point

Three markdown specifications at project kickoff were relocated into a stable layout:

Document Role
australian_politics_primer.md Scope, institutions, scale → published as Primer
australian_politics_tracking_system.md Architecture & maintenance → System design
politics_tracker_gaps_analysis.md Missing layers → Gaps & layers

Decision: MkDocs + Material theme; docs/ = changing tracker; documents/ = blueprints + audit trail.


Phase 1 — Foundation

Audit: documents/audit/002-phase-one-implementation.md

  • MkDocs site and navigation
  • Full folder tree (jurisdictions, parties, politicians, policies, seats, finance, media, history, networks, applications, archive, councils, events, factions, templates)
  • Nine jurisdiction hubs; four federal party profiles
  • Priority federal dossiers (cabinet, opposition); event log; gap-layer stubs

Phase 2 — State rollout

Audit: documents/audit/003-phase-two-implementation.md

  • 24 state party shells (scripts/generate_party_shells.py)
  • 28 state politician dossiers + indexes (scripts/generate_state_politicians.py)
  • Federal tier-1 policies; state policy starters (NSW, VIC, QLD, WA)
  • 2025 federal pendulum (initial); five council profiles; history/networks/media baselines
  • Leadership corrections: Dutton/Ley archived; Angus Taylor as opposition leader (Feb 2026 spill)

Phase 3 — Electoral depth

Audit: documents/audit/004-phase-three-deep-dive.md

  • build_federal_pendulum.py — all 150 divisions, AEC TPP 10 Jun 2025, member names (e.g. Bullwinkel +0.51% most marginal Labor classic)
  • build_state_pendulum.py — SA from ECSA CSV; VIC marginals; NSW/QLD/WA shells
  • generate_senate_crossbench.py — 20 Senate + 13 HoR crossbench dossiers

Phase 4 — Full coverage

Audit: documents/audit/005-phase-four-implementation.md

  • 150 HoR dossier shells (generate_all_house_dossiers.py)
  • 76 Senate dossiers (generate_full_senate.py) + state-grouped index
  • Federal pendulum links to HoR dossiers
  • NSW Parliament/Antony Green 2023 pendulum; QLD 2024; TAS Hare-Clark 2024; NT 2024
  • Councils: Joondalup, Unley/NPSP; history: SA, TAS, ACT, NT
  • ~376 markdown files under docs/

Conventions locked in early

Topic Rule
Politician files {lastname}-{firstname}.md
Metadata YAML frontmatter on dossiers
Weekly work docs/events/log.md only
Templates folder doc-templates/ (MkDocs excludes a folder named templates/)
Specifications Stay in documents/; site copies primer for reading

Generators (maintenance)

python scripts/build_federal_pendulum.py
python scripts/build_state_pendulum.py
python scripts/generate_full_senate.py
python scripts/generate_all_house_dossiers.py
python scripts/rebuild_federal_index.py
python scripts/query_politicians.py --jurisdiction Federal

Audit trail index

Full records in documents/audit/:

# File
001 001-project-kickoff-and-structure.md
002 002-phase-one-implementation.md
003 003-phase-two-implementation.md
004 004-phase-three-deep-dive.md
005 005-phase-four-implementation.md

What’s next (optional)

  • NSWEC / ECQ CSV for machine-exact state 2PP
  • Crossbench 2CP rows linked in federal pendulum
  • Richer portfolio/committee text on backbench shells
  • Your content in applications/so-what.md

Enter the tracker

Dashboard → — jurisdictional matrix, coverage table, current watch list.