feat(admissions): surface multi-year admissions trend on school detail #1

Merged
tudor merged 1 commits from feat/admissions-multi-year-trend into main 2026-06-19 17:42:20 +00:00
Owner

The school detail page only showed the latest admissions year. We store
every year, which is more decision-relevant for parents (the trend and its
consistency matter more than a single noisy year).

Backend now returns the full admissions_history (oldest first) alongside the
existing latest-year object. The primary SchoolDetailView gains a header
toggle ("This year | N-year trend") that swaps the Q&A for an SVG sparkline
of the first-choice offer rate. The toggle only appears when >=2 years carry
an offer rate; otherwise it falls back to the single-year card. Both views
share one CSS-grid cell so switching causes no layout shift.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

The school detail page only showed the latest admissions year. We store every year, which is more decision-relevant for parents (the trend and its consistency matter more than a single noisy year). Backend now returns the full admissions_history (oldest first) alongside the existing latest-year object. The primary SchoolDetailView gains a header toggle ("This year | N-year trend") that swaps the Q&A for an SVG sparkline of the first-choice offer rate. The toggle only appears when >=2 years carry an offer rate; otherwise it falls back to the single-year card. Both views share one CSS-grid cell so switching causes no layout shift. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
tudor added 1 commit 2026-06-19 17:42:13 +00:00
feat(admissions): surface multi-year admissions trend on school detail
Build and Push Docker Images / Build Backend (FastAPI) (pull_request) Successful in 22s
Build and Push Docker Images / Build Frontend (Next.js) (pull_request) Successful in 53s
Build and Push Docker Images / Build Pipeline (Meltano + dbt + Airflow) (pull_request) Successful in 11s
Build and Push Docker Images / Trigger Portainer Update (pull_request) Has been skipped
4de7e559e9
The school detail page only showed the latest admissions year. We store
every year, which is more decision-relevant for parents (the trend and its
consistency matter more than a single noisy year).

Backend now returns the full admissions_history (oldest first) alongside the
existing latest-year object. The primary SchoolDetailView gains a header
toggle ("This year | N-year trend") that swaps the Q&A for an SVG sparkline
of the first-choice offer rate. The toggle only appears when >=2 years carry
an offer rate; otherwise it falls back to the single-year card. Both views
share one CSS-grid cell so switching causes no layout shift.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
tudor merged commit 8ad11f1728 into main 2026-06-19 17:42:20 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tudor/school_compare#1