Hackathon night · 2026-08-27
Same idea as the Automatica kanban. Every card is a releasable increment —
the site should still look working when the card lands.
Push to main deploys the site and the API. To-do and done lists
have their own pages (to do, done)
so this board stays short.
Filter by person with the chips, the hour cards, or a row in Who’s who.
Click a card for the full brief (or share #t-04).
Board edits: python scripts/update_board.py.
Showing everyone.
Clone the API as a sibling of the site and get FastAPI answering on port 8080. This is the health-check loop, not Cloud Run.
GET http://127.0.0.1:8080/health returns ok./docs loads the Swagger UI.python -m venv .venv then pip install -r requirements.txt.uvicorn app.main:app --reload --port 8080 (or just .\start.ps1 from the site folder).Prove the org-repo loop on hackathon-site: a tiny visible change, still runs, then push to origin/main. Not a personal fork unless you have been told otherwise.
main.git add · git commit · git push origin main.Prove the org-repo loop on hackathon-api. Tiny change, still serves /health, then push to origin/main.
/health still works after the change./health again.git add · git commit · git push origin main.start.ps1 already lives in the site repo. This card is: a teammate can clone both repos as siblings, run one command, and get site :5500 plus API :8080 without asking anyone.
hackathon-site, .\start.ps1 opens two windows./health both work. If the venv is missing, the script creates it.Empty on purpose. Pull a Ready card and ship it.
Leaflet map centred on Newcastle. Click to drop a stop, drag to move it, remove from the list. This is the visual spine of the night: dispatch starts with a map that never looks dead.
app/index.html + app/map.js — OSM tiles, draggable markers, stop list with remove.Calculate a driving route through the waypoints. Public OSRM when the network is up; haversine straight-line fallback if it fails, so the board never looks broken.
OSRM driving or straight-line).https://router.project-osrm.org for the driving geometry.Hours are every card attributed to that person, whichever column it sits in. Click a row to filter the board.
| Owner | Claimed work | Hours | |
|---|---|---|---|
| 🧭 | Reeve | Reeve: get the front end running locally (0.5h, done) · Reeve: get the back end running locally (1h, done) · Reeve: GitHub edit → run → push (API repo) (0.75h) · Reeve: start script for front end and back end together (1h) · Demo seed: 5 Tyneside waypoints + named run (1.5h) · Map with clickable / draggable waypoints (3h, ready) · Run the API locally and hit /health (1h, done) | 8.75h |
| ⚡ | Connor | Connor: get the front end running locally (0.5h) · Connor: GitHub edit → run → push (site repo) (0.75h) · Job list beside the map (seed Howden-shaped jobs) (2h) · Route calculation between waypoints (3h, ready) · finished push and pull (0.5h) | 6.75h |
| 🏗️ | Michael | Site + API deploy on push to main (2h, done) · Cloud Run API live + CORS for Pages (4h, done) · Michael: GitHub edit → run → push (both repos) (0.75h) · Persist routes on the API (replace localStorage) (4h) | 10.75h |
| 🌱 | Lewis | Lewis: get the front end running locally (0.5h, done) · Lewis: get the back end running locally (1h) · Lewis: GitHub edit → run → push (site repo) (0.75h) · Save routes in the browser (localStorage) (2h) · Local “who am I” account (name in the browser) (2h) · Serve the site locally (0.5h, done) · Desktop home in Tyneside style (2h, done) | 8.75h |
| 🔧 | Noah | Noah: API version on / and /health (0.5h, done) · Noah: get the front end running locally (0.5h, done) · Noah: get the back end running locally (1h, done) | 2h |
python scripts/update_board.py done 12 (or move 07 doing) — do not hand-edit the kanban HTML.main.Do this on the Tyneside-Software repos, not personal forks unless you have been told otherwise. Full clone-and-run steps (and the usual Windows fixes) live on Onboarding.
.\start.ps1 in the site repo (or .\serve.ps1 for the site only, and uvicorn on :8080 for the API).git add · git commit · git push origin main.