PR Checks / Frontend Typecheck + Tests (pull_request) Successful in 1m3s
PR Checks / Backend Smoke (pull_request) Successful in 7s
PR Checks / Build Backend (no push) (pull_request) Successful in 12s
PR Checks / Build Frontend (no push) (pull_request) Successful in 42s
PR Checks / Build Pipeline (no push) (pull_request) Successful in 10s
PR Checks / AI Code Review (Claude) (pull_request) Successful in 37s
Homepage marketing content had drifted from both the current education regime and the app's own school pages. An expert accuracy review surfaced five issues (3 critical, 2 high): - Ofsted card showed a single "OUTSTANDING" word-grade. Overall grades were abolished (Sept 2024) and inspections now produce a report card on a five-point scale (from Nov 2025). Rebuilt the card as a report card with per-area ratings + stand-alone safeguarding, matching what CompareOfsted actually renders on a school page. - Attainment 8 "National avg 50.2" was wrong; the real 2024/25 figure is 45.9. Corrected the benchmark and the illustrative school value. - Compare mock featured a KS2 "Reading progress" score, but KS2 progress isn't published for 2023/24 or 2024/25 (no post-COVID KS1 baseline). Swapped for Higher standard (RWM), which is published. - Editorial called it "UK school performance data"; the data is England-only. Now matches the hero and page metadata. - Softened the "40-page inspection report" exaggeration. Landing-page copy isn't covered by e2e journeys, so no test changes. Verified with tsc --noEmit and next build. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0146VHeLAWjDVE2B5uU67jCB
60 lines
2.7 KiB
TypeScript
60 lines
2.7 KiB
TypeScript
// Server component: pure markup, no client state.
|
||
|
||
import styles from './HomeView.module.css';
|
||
|
||
interface EditorialSectionProps {
|
||
totalSchools: number | null;
|
||
localAuthorityCount: number;
|
||
}
|
||
|
||
export function EditorialSection({ totalSchools, localAuthorityCount }: EditorialSectionProps) {
|
||
return (
|
||
<section className={styles.editorial}>
|
||
<div className={styles.editorialGrid}>
|
||
<div className={styles.editorialText}>
|
||
<div className={styles.editorialKicker}>About school data</div>
|
||
<h2 className={styles.editorialHeading}>Making England's school performance data actually readable</h2>
|
||
<p>
|
||
School performance data in England is rich but fragmented. The Department for Education publishes
|
||
Key Stage 2 SATs, GCSE attainment, Ofsted outcomes, progress scores, admissions figures and
|
||
demographics — each in its own table, each with its own jargon.
|
||
</p>
|
||
<p>
|
||
SchoolCompare brings it all into one place. Every school page shows performance against the national
|
||
average, explains what the numbers mean, and lets you shortlist schools side by side. Built for
|
||
parents, governors, journalists, and anyone who wants to understand a school without reading a
|
||
full inspection report.
|
||
</p>
|
||
</div>
|
||
<div className={styles.factbox}>
|
||
<h3 className={styles.factboxHeading}>Coverage at a glance</h3>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Schools covered</span>
|
||
<span className={styles.factVal}>{totalSchools ? `${totalSchools.toLocaleString()}` : '24,000+'}</span>
|
||
</div>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Local authorities</span>
|
||
<span className={styles.factVal}>{localAuthorityCount > 0 ? localAuthorityCount : 152}</span>
|
||
</div>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Phases</span>
|
||
<span className={styles.factVal}>Primary & Secondary</span>
|
||
</div>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Latest results year</span>
|
||
<span className={styles.factVal}>2024/25</span>
|
||
</div>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Historical data</span>
|
||
<span className={styles.factVal}>2016–2025</span>
|
||
</div>
|
||
<div className={styles.factRow}>
|
||
<span className={styles.factKey}>Metrics per school</span>
|
||
<span className={styles.factVal}>40+</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
);
|
||
}
|