fix(years): format academic years as 2016/17 across all views, remove legacy frontend and data
Some checks failed
Build and Push Docker Images / Build Backend (FastAPI) (push) Failing after 12s
Build and Push Docker Images / Build Frontend (Next.js) (push) Successful in 53s
Build and Push Docker Images / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 12s
Build and Push Docker Images / Trigger Portainer Update (push) Has been skipped
Some checks failed
Build and Push Docker Images / Build Backend (FastAPI) (push) Failing after 12s
Build and Push Docker Images / Build Frontend (Next.js) (push) Successful in 53s
Build and Push Docker Images / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 12s
Build and Push Docker Images / Trigger Portainer Update (push) Has been skipped
Apply formatAcademicYear to all year displays in ComparisonChart, ComparisonView, PerformanceChart, and RankingsView. Remove old vanilla JS frontend and CSV data directory — both superseded by the Next.js app and Meltano pipeline. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
BIN
data/.DS_Store
vendored
BIN
data/.DS_Store
vendored
Binary file not shown.
@@ -1,3 +0,0 @@
|
|||||||
# Place your CSV data files here
|
|
||||||
# Download from: https://www.compare-school-performance.service.gov.uk/download-data
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,24 +0,0 @@
|
|||||||
Field Number,Field Reference,Field Name,Values,Data Format,LA level field?,National level field?
|
|
||||||
1,URN,School Unique Reference Number,999999,I6,No,No
|
|
||||||
2,LA,LA number,999,I3,Yes,No
|
|
||||||
3,ESTAB,ESTAB number,9999,I4,No,No
|
|
||||||
4,SCHOOLTYPE,Type of school,String,,No,No
|
|
||||||
5,NOR,Total number of pupils on roll,9999 or NA,,Yes,Yes
|
|
||||||
6,NORG,Number of girls on roll,9999 or NA,,Yes,Yes
|
|
||||||
7,NORB,Number of boys on roll,9999 or NA,,Yes,Yes
|
|
||||||
8,PNORG,Percentage of girls on roll,99.9 or NA,,Yes,Yes
|
|
||||||
9,PNORB,Percentage of boys on roll,99.9 or NA,,Yes,Yes
|
|
||||||
10,TSENELSE,Number of eligible pupils with an EHC plan,9999 or NA,A4,Yes,Yes
|
|
||||||
11,PSENELSE,Percentage of eligible pupils with an EHC plan,99.9 or NA,A4,Yes,Yes
|
|
||||||
12,TSENELK,Number of eligible pupils with SEN support,9999 or NA,A4,Yes,Yes
|
|
||||||
13,PSENELK,Percentage of eligible pupils with SEN support,99.9 or NA,A4,Yes,Yes
|
|
||||||
14,NUMEAL,No. pupils where English not first language,9999 or NA,A4,Yes,Yes
|
|
||||||
15,NUMENGFL,No. pupils with English first language,9999 or NA,A4,Yes,Yes
|
|
||||||
16,NUMUNCFL,No. pupils where first language is unclassified,9999 or NA,A4,Yes,Yes
|
|
||||||
17,PNUMEAL,% pupils where English not first language,99.9 or NA,A4,Yes,Yes
|
|
||||||
18,PNUMENGFL,% pupils with English first language,99.9 or NA,A4,Yes,Yes
|
|
||||||
19,PNUMUNCFL,% pupils where first language is unclassified,99.9 or NA,A4,Yes,Yes
|
|
||||||
20,NUMFSM,No. pupils eligible for free school meals,9999 or NA,A4,Yes,Yes
|
|
||||||
21,NUMFSMEVER,Number of pupils eligible for FSM at any time during the past 6 years,9999 or NA,A6,Yes,Yes
|
|
||||||
22,NORFSMEVER,Total pupils for FSMEver,9999 or NA,,Yes,Yes
|
|
||||||
23,PNUMFSMEVER,Percentage of pupils eligible for FSM at any time during the past 6 years,99.9 or NA,A4,Yes,Yes
|
|
||||||
|
@@ -1,312 +0,0 @@
|
|||||||
Column,Field Name,Label/Description
|
|
||||||
1,RECTYPE,Record type
|
|
||||||
2,AlphaIND,Alphabetic index
|
|
||||||
3,LEA,Local authority number
|
|
||||||
4,ESTAB,Establishment number
|
|
||||||
5,URN,School unique reference number
|
|
||||||
6,SCHNAME,School/Local authority name
|
|
||||||
7,ADDRESS1,School address (1)
|
|
||||||
8,ADDRESS2,School address (2)
|
|
||||||
9,ADDRESS3,School address (3)
|
|
||||||
10,TOWN,School town
|
|
||||||
11,PCODE,School postcode
|
|
||||||
12,TELNUM,School telephone number
|
|
||||||
13,PCON_CODE,School parliamentary constituency code
|
|
||||||
14,PCON_NAME,School parliamentary constituency name
|
|
||||||
15,URN_AC,Converter academy: URN
|
|
||||||
16,SCHNAME_AC,Converter academy: name
|
|
||||||
17,OPEN_AC,Converter academy: open date
|
|
||||||
18,NFTYPE,School type
|
|
||||||
19,ICLOSE,Closed Flag
|
|
||||||
20,RELDENOM,Religious denomination
|
|
||||||
21,AGERANGE,Age range
|
|
||||||
22,TAB15,School published in secondary school (key stage 4) performance tables
|
|
||||||
23,TAB1618,School published in school and college (key stage 5) performance tables
|
|
||||||
24,TOTPUPS,Total number of pupils (including part-time pupils)
|
|
||||||
25,TPUPYEAR,Number of pupils aged 11
|
|
||||||
26,TELIG,Published eligible pupil number
|
|
||||||
27,BELIG,Eligible boys on school roll at time of tests
|
|
||||||
28,GELIG,Eligible girls on school roll at time of tests
|
|
||||||
29,PBELIG,Percentage of eligible boys on school roll at time of tests
|
|
||||||
30,PGELIG,Percentage of eligible girls on school roll at time of tests
|
|
||||||
31,TKS1AVERAGE,Cohort level key stage 1 average points score [not populated in 2025]
|
|
||||||
32,TKS1GROUP_L,Number of pupils in cohort with low KS1 attainment [not populated in 2025]
|
|
||||||
33,PTKS1GROUP_L,Percentage of pupils in cohort with low KS1 attainment [not populated in 2025]
|
|
||||||
34,TKS1GROUP_M,Number of pupils in cohort with medium KS1 attainment [not populated in 2025]
|
|
||||||
35,PTKS1GROUP_M,Percentage of pupils in cohort with medium KS1 attainment [not populated in 2025]
|
|
||||||
36,TKS1GROUP_H,Number of pupils in cohort high KS1 attainment [not populated in 2025]
|
|
||||||
37,PTKS1GROUP_H,Percentage of pupils in cohort with high KS1 attainment [not populated in 2025]
|
|
||||||
38,TKS1GROUP_NA,No. of pupils in KS1 group not calculable [not populated in 2025]
|
|
||||||
39,PTKS1GROUP_NA,Percentage of pupils in KS1group not calculable [not populated in 2025]
|
|
||||||
40,TFSM6CLA1A,Number of key stage 2 disadvantaged pupils (those who were eligible for free school meals in last 6 years or are looked after by the LA for a day or more or who have been adopted from care)
|
|
||||||
41,PTFSM6CLA1A,Percentage of key stage 2 disadvantaged pupils
|
|
||||||
42,TNotFSM6CLA1A,Number of key stage 2 pupils who are not disadvantaged
|
|
||||||
43,PTNotFSM6CLA1A,Percentage of key stage 2 pupils who are not disadvantaged
|
|
||||||
44,TEALGRP2,Number of eligible pupils with English as additional language (EAL)
|
|
||||||
45,PTEALGRP2,Percentage of eligible pupils with English as additional language (EAL)
|
|
||||||
46,TMOBN,Number of eligible pupils classified as non-mobile
|
|
||||||
47,PTMOBN,Percentage of eligible pupils classified as non-mobile
|
|
||||||
48,PTRWM_EXP,"Percentage of pupils reaching the expected standard in reading, writing and maths"
|
|
||||||
49,PTRWM_HIGH,Percentage of pupils achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
50,READPROG,Reading progress measure [not populated in 2025]
|
|
||||||
51,READPROG_LOWER,Reading progress measure - lower confidence limit [not populated in 2025]
|
|
||||||
52,READPROG_UPPER,Reading progress measure - upper confidence limit [not populated in 2025]
|
|
||||||
53,READCOV,Reading progress measure - coverage [not populated in 2025]
|
|
||||||
54,WRITPROG,Writing progress measure [not populated in 2025]
|
|
||||||
55,WRITPROG_LOWER,Writing progress measure - lower confidence limit [not populated in 2025]
|
|
||||||
56,WRITPROG_UPPER,Writing progress measure - upper confidence limit [not populated in 2025]
|
|
||||||
57,WRITCOV,Writing progress measure - coverage [not populated in 2025]
|
|
||||||
58,MATPROG,Maths progress measure [not populated in 2025]
|
|
||||||
59,MATPROG_LOWER,Maths progress measure - lower confidence limit [not populated in 2025]
|
|
||||||
60,MATPROG_UPPER,Maths progress measure - upper confidence limit [not populated in 2025]
|
|
||||||
61,MATCOV,Maths progress measure - coverage [not populated in 2025]
|
|
||||||
62,PTREAD_EXP,Percentage of pupils reaching the expected standard in reading
|
|
||||||
63,PTREAD_HIGH,Percentage of pupils achieving a high score in reading
|
|
||||||
64,PTREAD_AT,Percentage of pupils absent from or not able to access the test in reading
|
|
||||||
65,READ_AVERAGE,Average scaled score in reading
|
|
||||||
66,PTGPS_EXP,"Percentage of pupils reaching the expected standard in grammar, punctuation and spelling"
|
|
||||||
67,PTGPS_HIGH,"Percentage of pupils achieving a high score in grammar, punctuation and spelling"
|
|
||||||
68,PTGPS_AT,"Percentage of pupils absent from or not able to access the test in grammar, punctuation and spelling"
|
|
||||||
69,GPS_AVERAGE,"Average scaled score in grammar, punctuation and spelling"
|
|
||||||
70,PTMAT_EXP,Percentage of pupils reaching the expected standard in maths
|
|
||||||
71,PTMAT_HIGH,Percentage of pupils achieving a high score in maths
|
|
||||||
72,PTMAT_AT,Percentage of pupils absent from or not able to access the test in maths
|
|
||||||
73,MAT_AVERAGE,Average scaled score in maths
|
|
||||||
74,PTWRITTA_EXP,Percentage of pupils reaching the expected standard in writing
|
|
||||||
75,PTWRITTA_HIGH,Percentage of pupils working at greater depth within the expected standard in writing
|
|
||||||
76,PTWRITTA_WTS,Percentage of pupils working towards the expected standard in writing
|
|
||||||
77,PTWRITTA_AD,Percentage of pupils absent or disapplied in writing TA
|
|
||||||
78,PTSCITA_EXP,Percentage of pupils reaching the expected standard in science TA
|
|
||||||
79,PTSCITA_AD,Percentage of pupils absent or disapplied in science TA
|
|
||||||
80,PTRWM_EXP_B,"Percentage of boys reaching the expected standard in reading, writing and maths"
|
|
||||||
81,PTRWM_EXP_G,"Percentage of girls reaching the expected standard in reading, writing and maths"
|
|
||||||
82,PTRWM_EXP_L,"Percentage of pupils with low prior attainment reaching the expected standard in reading, writing and maths [not populated in 2025]"
|
|
||||||
83,PTRWM_EXP_M,"Percentage of pupils with medium prior attainment reaching the expected standard in reading, writing and maths [not populated in 2025]"
|
|
||||||
84,PTRWM_EXP_H,"Percentage of pupils with high prior attainment reaching the expected standard in reading, writing and maths [not populated in 2025]"
|
|
||||||
85,PTRWM_EXP_FSM6CLA1A,"Percentage of disadvantaged pupils reaching the expected standard in reading, writing and maths"
|
|
||||||
86,PTRWM_EXP_NotFSM6CLA1A,"Percentage of non-disadvantaged pupils reaching the expected standard in reading, writing and maths"
|
|
||||||
87,DIFFN_RWM_EXP,"Difference between school percentage of disavantaged pupils and national percentage of other pupils reaching the expected standard in reading, writing and maths "
|
|
||||||
88,PTRWM_EXP_EAL,"Percentage of EAL pupils reaching the expected standard in reading, writing and maths"
|
|
||||||
89,PTRWM_EXP_MOBN,"Percentage of non-mobile pupils reaching the expected standard in reading, writing and maths"
|
|
||||||
90,PTRWM_HIGH_B,Percentage of boys achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
91,PTRWM_HIGH_G,"Percentage of girls reaching the HIGHected standard in reading, writing and maths"
|
|
||||||
92,PTRWM_HIGH_L,Percentage of pupils with low prior attainment achieving a high score in reading and maths and working at greater depth in writing [not populated in 2025]
|
|
||||||
93,PTRWM_HIGH_M,Percentage of pupils with medium prior attainment achieving a high score in reading and maths and working at greater depth in writing [not populated in 2025]
|
|
||||||
94,PTRWM_HIGH_H,Percentage of pupils with high prior attainment achieving a high score in reading and maths and working at greater depth in writing [not populated in 2025]
|
|
||||||
95,PTRWM_HIGH_FSM6CLA1A,Percentage of disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
96,PTRWM_HIGH_NotFSM6CLA1A,Percentage of non-disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
97,DIFFN_RWM_HIGH,"Difference between school percentage of disavantaged pupils and national percentage of other pupils achieving a high score in reading, writing and maths "
|
|
||||||
98,PTRWM_HIGH_EAL,Percentage of EAL pupils achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
99,PTRWM_HIGH_MOBN,Percentage of non-mobile pupils achieving a high score in reading and maths and working at greater depth in writing
|
|
||||||
100,READPROG_B,Reading progress measure for boys [not populated in 2025]
|
|
||||||
101,READPROG_B_LOWER,Reading progress measure for boys - lower confidence limit [not populated in 2025]
|
|
||||||
102,READPROG_B_UPPER,Reading progress measure for boys - upper confidence limit [not populated in 2025]
|
|
||||||
103,READPROG_G,Reading progress measure for girls [not populated in 2025]
|
|
||||||
104,READPROG_G_LOWER,Reading progress measure for girls - lower confidence limit [not populated in 2025]
|
|
||||||
105,READPROG_G_UPPER,Reading progress measure for girls - upper confidence limit [not populated in 2025]
|
|
||||||
106,READPROG_L,Reading progress measure for pupils with low prior attainment [not populated in 2025]
|
|
||||||
107,READPROG_L_LOWER,Reading progress measure for pupils with low prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
108,READPROG_L_UPPER,Reading progress measure for pupils with low prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
109,READPROG_M,Reading progress measure for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
110,READPROG_M_LOWER,Reading progress measure for pupils with medium prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
111,READPROG_M_UPPER,Reading progress measure for pupils with medium prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
112,READPROG_H,Reading progress measure for pupils with high prior attainment [not populated in 2025]
|
|
||||||
113,READPROG_H_LOWER,Reading progress measure for pupils with high prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
114,READPROG_H_UPPER,Reading progress measure for pupils with high prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
115,READPROG_FSM6CLA1A,Reading progress measure for disadvantaged pupils [not populated in 2025]
|
|
||||||
116,READPROG_FSM6CLA1A_LOWER,Reading progress measure for disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
117,READPROG_FSM6CLA1A_UPPER,Reading progress measure for disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
118,READPROG_NotFSM6CLA1A,Reading progress measure for non-disadvantaged pupils [not populated in 2025]
|
|
||||||
119,READPROG_NotFSM6CLA1A_LOWER,Reading progress measure for non-disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
120,READPROG_NotFSM6CLA1A_UPPER,Reading progress measure for non-disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
121,DIFFN_READPROG,Difference between reading progress measure for disadvantaged pupils in school and other pupils nationally [not populated in 2025]
|
|
||||||
122,READPROG_EAL,Reading progress measure for EAL pupils [not populated in 2025]
|
|
||||||
123,READPROG_EAL_LOWER,Reading progress measure for EAL pupils - lower confidence limit [not populated in 2025]
|
|
||||||
124,READPROG_EAL_UPPER,Reading progress measure for EAL pupils - upper confidence limit [not populated in 2025]
|
|
||||||
125,READPROG_MOBN,Reading progress measure for non-mobile pupils [not populated in 2025]
|
|
||||||
126,READPROG_MOBN_LOWER,Reading progress measure for non-mobile pupils - lower confidence limit [not populated in 2025]
|
|
||||||
127,READPROG_MOBN_UPPER,Reading progress measure for non-mobile pupils - upper confidence limit [not populated in 2025]
|
|
||||||
128,WRITPROG_B,Writing progress measure for boys [not populated in 2025]
|
|
||||||
129,WRITPROG_B_LOWER,Writing progress measure for boys - lower confidence limit [not populated in 2025]
|
|
||||||
130,WRITPROG_B_UPPER,Writing progress measure for boys - upper confidence limit [not populated in 2025]
|
|
||||||
131,WRITPROG_G,Writing progress measure for girls [not populated in 2025]
|
|
||||||
132,WRITPROG_G_LOWER,Writing progress measure for girls - lower confidence limit [not populated in 2025]
|
|
||||||
133,WRITPROG_G_UPPER,Writing progress measure for girls - upper confidence limit [not populated in 2025]
|
|
||||||
134,WRITPROG_L,Writing progress measure for pupils with low prior attainment [not populated in 2025]
|
|
||||||
135,WRITPROG_L_LOWER,Writing progress measure for pupils with low prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
136,WRITPROG_L_UPPER,Writing progress measure for pupils with low prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
137,WRITPROG_M,Writing progress measure for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
138,WRITPROG_M_LOWER,Writing progress measure for pupils with medium prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
139,WRITPROG_M_UPPER,Writing progress measure for pupils with medium prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
140,WRITPROG_H,Writing progress measure for pupils with high prior attainment [not populated in 2025]
|
|
||||||
141,WRITPROG_H_LOWER,Writing progress measure for pupils with high prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
142,WRITPROG_H_UPPER,Writing progress measure for pupils with high prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
143,WRITPROG_FSM6CLA1A,Writing progress measure for disadvantaged pupils [not populated in 2025]
|
|
||||||
144,WRITPROG_FSM6CLA1A_LOWER,Writing progress measure for disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
145,WRITPROG_FSM6CLA1A_UPPER,Writing progress measure for disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
146,WRITPROG_NotFSM6CLA1A,Writing progress measure for non-disadvantaged pupils [not populated in 2025]
|
|
||||||
147,WRITPROG_NotFSM6CLA1A_LOWER,Writing progress measure for non-disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
148,WRITPROG_NotFSM6CLA1A_UPPER,Writing progress measure for non-disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
149,DIFFN_WRITPROG,Difference between writing progress measure for disadvantaged pupils in school and other pupils nationally [not populated in 2025]
|
|
||||||
150,WRITPROG_EAL,Writing progress measure for EAL pupils [not populated in 2025]
|
|
||||||
151,WRITPROG_EAL_LOWER,Writing progress measure for EAL pupils - lower confidence limit [not populated in 2025]
|
|
||||||
152,WRITPROG_EAL_UPPER,Writing progress measure for EAL pupils - upper confidence limit [not populated in 2025]
|
|
||||||
153,WRITPROG_MOBN,Writing progress measure for non-mobile pupils [not populated in 2025]
|
|
||||||
154,WRITPROG_MOBN_LOWER,Writing progress measure for non-mobile pupils - lower confidence limit [not populated in 2025]
|
|
||||||
155,WRITPROG_MOBN_UPPER,Writing progress measure for non-mobile pupils - upper confidence limit [not populated in 2025]
|
|
||||||
156,MATPROG_B,Maths progress measure for boys [not populated in 2025]
|
|
||||||
157,MATPROG_B_LOWER,Maths progress measure for boys - lower confidence limit [not populated in 2025]
|
|
||||||
158,MATPROG_B_UPPER,Maths progress measure for boys - upper confidence limit [not populated in 2025]
|
|
||||||
159,MATPROG_G,Maths progress measure for girls [not populated in 2025]
|
|
||||||
160,MATPROG_G_LOWER,Maths progress measure for girls - lower confidence limit [not populated in 2025]
|
|
||||||
161,MATPROG_G_UPPER,Maths progress measure for girls - upper confidence limit [not populated in 2025]
|
|
||||||
162,MATPROG_L,Maths progress measure for pupils with low prior attainment [not populated in 2025]
|
|
||||||
163,MATPROG_L_LOWER,Maths progress measure for pupils with low prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
164,MATPROG_L_UPPER,Maths progress measure for pupils with low prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
165,MATPROG_M,Maths progress measure for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
166,MATPROG_M_LOWER,Maths progress measure for pupils with medium prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
167,MATPROG_M_UPPER,Maths progress measure for pupils with medium prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
168,MATPROG_H,Maths progress measure for pupils with high prior attainment [not populated in 2025]
|
|
||||||
169,MATPROG_H_LOWER,Maths progress measure for pupils with high prior attainment - lower confidence limit [not populated in 2025]
|
|
||||||
170,MATPROG_H_UPPER,Maths progress measure for pupils with high prior attainment - upper confidence limit [not populated in 2025]
|
|
||||||
171,MATPROG_FSM6CLA1A,Maths progress measure for disadvantaged pupils [not populated in 2025]
|
|
||||||
172,MATPROG_FSM6CLA1A_LOWER,Maths progress measure for disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
173,MATPROG_FSM6CLA1A_UPPER,Maths progress measure for disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
174,MATPROG_NotFSM6CLA1A,Maths progress measure for non-disadvantaged pupils [not populated in 2025]
|
|
||||||
175,MATPROG_NotFSM6CLA1A_LOWER,Maths progress measure for non-disadvantaged pupils - lower confidence limit [not populated in 2025]
|
|
||||||
176,MATPROG_NotFSM6CLA1A_UPPER,Maths progress measure for non-disadvantaged pupils - upper confidence limit [not populated in 2025]
|
|
||||||
177,DIFFN_MATPROG,Difference between maths progress measure for disadvantaged pupils in school and other pupils nationally [not populated in 2025]
|
|
||||||
178,MATPROG_EAL,Maths progress measure for EAL pupils [not populated in 2025]
|
|
||||||
179,MATPROG_EAL_LOWER,Maths progress measure for EAL pupils - lower confidence limit [not populated in 2025]
|
|
||||||
180,MATPROG_EAL_UPPER,Maths progress measure for EAL pupils - upper confidence limit [not populated in 2025]
|
|
||||||
181,MATPROG_MOBN,Maths progress measure for non-mobile pupils [not populated in 2025]
|
|
||||||
182,MATPROG_MOBN_LOWER,Maths progress measure for non-mobile pupils - lower confidence limit [not populated in 2025]
|
|
||||||
183,MATPROG_MOBN_UPPER,Maths progress measure for non-mobile pupils - upper confidence limit [not populated in 2025]
|
|
||||||
184,READ_AVERAGE_B,Average scaled score in reading for boys
|
|
||||||
185,READ_AVERAGE_G,Average scaled score in reading for girls
|
|
||||||
186,READ_AVERAGE_L,Average scaled score in reading for pupils with low prior attainment [not populated in 2025]
|
|
||||||
187,READ_AVERAGE_M,Average scaled score in reading for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
188,READ_AVERAGE_H,Average scaled score in reading for pupils with high prior attainment [not populated in 2025]
|
|
||||||
189,READ_AVERAGE_FSM6CLA1A,Average scaled score in reading for disadvantaged pupils
|
|
||||||
190,READ_AVERAGE_NotFSM6CLA1A,Average scaled score in reading for non-disadvantaged pupils
|
|
||||||
191,READ_AVERAGE_EAL,Average scaled score in reading for EAL pupils
|
|
||||||
192,READ_AVERAGE_MOBN,Average scaled score in reading for MOBN pupils
|
|
||||||
193,MAT_AVERAGE_B,Average scaled score in maths for boys
|
|
||||||
194,MAT_AVERAGE_G,Average scaled score in maths for girls
|
|
||||||
195,MAT_AVERAGE_L,Average scaled score in maths for pupils with low prior attainment [not populated in 2025]
|
|
||||||
196,MAT_AVERAGE_M,Average scaled score in maths for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
197,MAT_AVERAGE_H,Average scaled score in maths for pupils with high prior attainment [not populated in 2025]
|
|
||||||
198,MAT_AVERAGE_FSM6CLA1A,Average scaled score in maths for disadvantaged pupils
|
|
||||||
199,MAT_AVERAGE_NotFSM6CLA1A,Average scaled score in maths for non-disadvantaged pupils
|
|
||||||
200,MAT_AVERAGE_EAL,Average scaled score in maths for EAL pupils
|
|
||||||
201,MAT_AVERAGE_MOBN,Average scaled score in maths for MOBN pupils
|
|
||||||
202,GPS_AVERAGE_B,Average scaled score in GPS for boys
|
|
||||||
203,GPS_AVERAGE_G,Average scaled score in GPS for girls
|
|
||||||
204,GPS_AVERAGE_L,Average scaled score in GPS for pupils with low prior attainment [not populated in 2025]
|
|
||||||
205,GPS_AVERAGE_M,Average scaled score in GPS for pupils with medium prior attainment [not populated in 2025]
|
|
||||||
206,GPS_AVERAGE_H,Average scaled score in GPS for pupils with high prior attainment [not populated in 2025]
|
|
||||||
207,GPS_AVERAGE_FSM6CLA1A,Average scaled score in GPS for disadvantaged pupils
|
|
||||||
208,GPS_AVERAGE_NotFSM6CLA1A,Average scaled score in GPS for non-disadvantaged pupils
|
|
||||||
209,GPS_AVERAGE_EAL,Average scaled score in GPS for EAL pupils
|
|
||||||
210,GPS_AVERAGE_MOBN,Average scaled score in GPS for MOBN pupils
|
|
||||||
211,PTREAD_EXP_L,Percentage of pupils with low prior attainment reaching the expected standard in reading [not populated in 2025]
|
|
||||||
212,PTREAD_EXP_M,Percentage of pupils with medium prior attainment reaching the expected standard in reading [not populated in 2025]
|
|
||||||
213,PTREAD_EXP_H,Percentage of pupils with high prior attainment reaching the expected standard in reading [not populated in 2025]
|
|
||||||
214,PTREAD_EXP_FSM6CLA1A,Percentage of disadvantaged pupils reaching the expected standard in reading
|
|
||||||
215,PTREAD_EXP_NotFSM6CLA1A,Percentage of non-disadvantaged pupils reaching the expected standard in reading
|
|
||||||
216,PTGPS_EXP_L,"Percentage of pupils with low prior attainment reaching the expected standard in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
217,PTGPS_EXP_M,"Percentage of pupils with medium prior attainment reaching the expected standard in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
218,PTGPS_EXP_H,"Percentage of pupils with high prior attainment reaching the expected standard in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
219,PTGPS_EXP_FSM6CLA1A,"Percentage of disadvantaged pupils reaching the expected standard in grammar, punctuation and spelling"
|
|
||||||
220,PTGPS_EXP_NotFSM6CLA1A,"Percentage of non-disadvantaged pupils reaching the expected standard in grammar, punctuation and spelling"
|
|
||||||
221,PTMAT_EXP_L,Percentage of pupils with low prior attainment reaching the expected standard in maths [not populated in 2025]
|
|
||||||
222,PTMAT_EXP_M,Percentage of pupils with medium prior attainment reaching the expected standard in maths [not populated in 2025]
|
|
||||||
223,PTMAT_EXP_H,Percentage of pupils with high prior attainment reaching the expected standard in maths [not populated in 2025]
|
|
||||||
224,PTMAT_EXP_FSM6CLA1A,Percentage of disadvantaged pupils reaching the expected standard in maths
|
|
||||||
225,PTMAT_EXP_NotFSM6CLA1A,Percentage of non-disadvantaged pupils reaching the expected standard in maths
|
|
||||||
226,PTWRITTA_EXP_L,Percentage of pupils with low prior attainment reaching the expected standard in writing [not populated in 2025]
|
|
||||||
227,PTWRITTA_EXP_M,Percentage of pupils with medium prior attainment reaching the expected standard in writing [not populated in 2025]
|
|
||||||
228,PTWRITTA_EXP_H,Percentage of pupils with high prior attainment reaching the expected standard in writing [not populated in 2025]
|
|
||||||
229,PTWRITTA_EXP_FSM6CLA1A,Percentage of disadvantaged pupils reaching the expected standard in writing
|
|
||||||
230,PTWRITTA_EXP_NotFSM6CLA1A,Percentage of non-disadvantaged pupils reaching the expected standard in writing
|
|
||||||
231,PTREAD_HIGH_L,Percentage of pupils with low prior attainment achieving a high score in reading [not populated in 2025]
|
|
||||||
232,PTREAD_HIGH_M,Percentage of pupils with medium prior attainment achieving a high score in reading [not populated in 2025]
|
|
||||||
233,PTREAD_HIGH_H,Percentage of pupils with high prior attainment achieving a high score in reading [not populated in 2025]
|
|
||||||
234,PTREAD_HIGH_FSM6CLA1A,Percentage of disadvantaged pupils achieving a high score in reading
|
|
||||||
235,PTREAD_HIGH_NotFSM6CLA1A,Percentage of non-disadvantaged pupils achieving a high score in reading
|
|
||||||
236,PTGPS_HIGH_L,"Percentage of pupils with low prior attainment achieving a high score in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
237,PTGPS_HIGH_M,"Percentage of pupils with medium prior attainment achieving a high score in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
238,PTGPS_HIGH_H,"Percentage of pupils with high prior attainment achieving a high score in grammar, punctuation and spelling [not populated in 2025]"
|
|
||||||
239,PTGPS_HIGH_FSM6CLA1A,"Percentage of disadvantaged pupils achieving a high score in grammar, punctuation and spelling"
|
|
||||||
240,PTGPS_HIGH_NotFSM6CLA1A,"Percentage of non-disadvantaged pupils achieving a high score in grammar, punctuation and spelling"
|
|
||||||
241,PTMAT_HIGH_L,Percentage of pupils with low prior attainment achieving a high score in maths [not populated in 2025]
|
|
||||||
242,PTMAT_HIGH_M,Percentage of pupils with medium prior attainment achieving a high score in maths [not populated in 2025]
|
|
||||||
243,PTMAT_HIGH_H,Percentage of pupils with high prior attainment achieving a high score in maths [not populated in 2025]
|
|
||||||
244,PTMAT_HIGH_FSM6CLA1A,Percentage of disadvantaged pupils achieving a high score in maths
|
|
||||||
245,PTMAT_HIGH_NotFSM6CLA1A,Percentage of non-disadvantaged pupils achieving a high score in maths
|
|
||||||
246,PTWRITTA_HIGH_L,Percentage of pupils with low prior attainment working at greater depth in writing [not populated in 2025]
|
|
||||||
247,PTWRITTA_HIGH_M,Percentage of pupils with medium prior attainment working at greater depth in writing [not populated in 2025]
|
|
||||||
248,PTWRITTA_HIGH_H,Percentage of pupils with high prior attainment working at greater depth in writing [not populated in 2025]
|
|
||||||
249,PTWRITTA_HIGH_FSM6CLA1A,Percentage of disadvantaged pupils working at greater depth in writing
|
|
||||||
250,PTWRITTA_HIGH_NotFSM6CLA1A,Percentage of non-disadvantaged pupils working at greater depth in writing
|
|
||||||
251,TEALGRP1,Number of eligible pupils with English as first language
|
|
||||||
252,PTEALGRP1,Percentage of eligible pupils with English as first language
|
|
||||||
253,TEALGRP3,Number of eligible pupils with unclassified language
|
|
||||||
254,PTEALGRP3,Percentage of eligible pupils with unclassified language
|
|
||||||
255,TSENELE,Number of eligible pupils with EHC plan
|
|
||||||
256,PSENELE,Percentage of eligible pupils with EHC plan
|
|
||||||
257,TSENELK,Number of eligible pupils with SEN support
|
|
||||||
258,PSENELK,Percentage of eligible pupils with SEN support
|
|
||||||
259,TSENELEK,Number of eligible pupils with SEN (EHC plan or SEN support)
|
|
||||||
260,PSENELEK,Percentage of eligible pupils with SEN (EHC plan or SEN support)
|
|
||||||
261,TELIG_24,Number of eligible pupils 2024
|
|
||||||
262,PTFSM6CLA1A_24,Percentage of key stage 2 disadvantaged pupils one year prior
|
|
||||||
263,PTNOTFSM6CLA1A_24,Percentage of key stage 2 pupils who are not disadvantaged one year prior
|
|
||||||
264,PTRWM_EXP_24,"Percentage of pupils reaching the expected standard in reading, writing and maths one year prior"
|
|
||||||
265,PTRWM_HIGH_24,Percentage of pupils achieving a high score in reading and maths and working at greater depth in writing one year prior
|
|
||||||
266,PTRWM_EXP_FSM6CLA1A_24,"Percentage of disadvantaged pupils reaching the expected standard in reading, writing and maths one year prior"
|
|
||||||
267,PTRWM_HIGH_FSM6CLA1A_24,Percentage of disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing one year prior
|
|
||||||
268,PTRWM_EXP_NotFSM6CLA1A_24,"Percentage of non-disadvantaged pupils reaching the expected standard in reading, writing and maths one year prior"
|
|
||||||
269,PTRWM_HIGH_NotFSM6CLA1A_24,Percentage of non-disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing one year prior
|
|
||||||
270,READPROG_24,Reading progress measure - one year prior [not populated in 2025]
|
|
||||||
271,READPROG_LOWER_24,Reading progress measure - lower confidence limit - one year prior [not populated in 2025]
|
|
||||||
272,READPROG_UPPER_24,Reading progress measure - upper confidence limit - one year prior [not populated in 2025]
|
|
||||||
273,WRITPROG_24,Writing progress measure - one year prior [not populated in 2025]
|
|
||||||
274,WRITPROG_LOWER_24,Writing progress measure - lower confidence limit - one year prior [not populated in 2025]
|
|
||||||
275,WRITPROG_UPPER_24,Writing progress measure - upper confidence limit - one year prior [not populated in 2025]
|
|
||||||
276,MATPROG_24,Maths progress measure - one year prior [not populated in 2025]
|
|
||||||
277,MATPROG_LOWER_24,Maths progress measure - lower confidence limit - one year prior [not populated in 2025]
|
|
||||||
278,MATPROG_UPPER_24,Maths progress measure - upper confidence limit - one year prior [not populated in 2025]
|
|
||||||
279,READ_AVERAGE_24,Average scaled score in reading - one year prior
|
|
||||||
280,MAT_AVERAGE_24,Average scaled score in maths - one year prior
|
|
||||||
281,TELIG_23,Number of eligible pupils 2023
|
|
||||||
282,PTFSM6CLA1A_23,Percentage of key stage 2 disadvantaged pupils - two years prior
|
|
||||||
283,PTNOTFSM6CLA1A_23,Percentage of key stage 2 pupils who are not disadvantaged - two years prior
|
|
||||||
284,PTRWM_EXP_23,"Percentage of pupils reaching the expected standard in reading, writing and maths - two years prior"
|
|
||||||
285,PTRWM_HIGH_23,Percentage of pupils achieving a high score in reading and maths and working at greater depth in writing - two years prior
|
|
||||||
286,PTRWM_EXP_FSM6CLA1A_23,"Percentage of disadvantaged pupils reaching the expected standard in reading, writing and maths - two years prior"
|
|
||||||
287,PTRWM_HIGH_FSM6CLA1A_23,Percentage of disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing - two years prior
|
|
||||||
288,PTRWM_EXP_NotFSM6CLA1A_23,"Percentage of non-disadvantaged pupils reaching the expected standard in reading, writing and maths - two years prior"
|
|
||||||
289,PTRWM_HIGH_NotFSM6CLA1A_23,Percentage of non-disadvantaged pupils achieving a high score in reading and maths and working at greater depth in writing - two years prior
|
|
||||||
290,READPROG_23,Reading progress measure - two years prior
|
|
||||||
291,READPROG_LOWER_23,Reading progress measure - lower confidence limit - two years prior
|
|
||||||
292,READPROG_UPPER_23,Reading progress measure - upper confidence limit - two years prior
|
|
||||||
293,WRITPROG_23,Writing progress measure - two years prior
|
|
||||||
294,WRITPROG_LOWER_23,Writing progress measure - lower confidence limit - two years prior
|
|
||||||
295,WRITPROG_UPPER_23,Writing progress measure - upper confidence limit - two years prior
|
|
||||||
296,MATPROG_23,Maths progress measure - two years prior
|
|
||||||
297,MATPROG_LOWER_23,Maths progress measure - lower confidence limit - two years prior
|
|
||||||
298,MATPROG_UPPER_23,Maths progress measure - upper confidence limit - two years prior
|
|
||||||
299,READ_AVERAGE_23,Average scaled score in reading - two years prior
|
|
||||||
300,MAT_AVERAGE_23,Average scaled score in maths - two years prior
|
|
||||||
301,TELIG_3YR,Total number of pupils at the end of Key Stage 2 over the past three years
|
|
||||||
302,PTRWM_EXP_3YR,"Percentage of pupils reaching the expected standard in reading, writing and maths - 3 year total"
|
|
||||||
303,PTRWM_HIGH_3YR,Percentage of pupils achieving a high score in reading and maths and working at greater depth in writing - 3 year total
|
|
||||||
304,READ_AVERAGE_3YR,Average scaled score in reading - 3 year average
|
|
||||||
305,MAT_AVERAGE_3YR,Average scaled score in maths - 3 year average
|
|
||||||
306,READPROG_UNADJUSTED,Unadjusted reading progress measure [not populated in 2025]
|
|
||||||
307,WRITPROG_UNADJUSTED,Unadjusted writing progress measure [not populated in 2025]
|
|
||||||
308,MATPROG_UNADJUSTED,Unadjusted maths progress measure [not populated in 2025]
|
|
||||||
309,READPROG_DESCR,Reading progress measure 'description' [not populated in 2025]
|
|
||||||
310,WRITPROG_DESCR,Writing progress measure 'description' [not populated in 2025]
|
|
||||||
311,MATPROG_DESCR,Maths progress measure 'description' [not populated in 2025]
|
|
||||||
|
@@ -1,154 +0,0 @@
|
|||||||
LEA,LA Name,REGION,REGION NAME
|
|
||||||
841,Darlington,1,North East A
|
|
||||||
840,County Durham,1,North East A
|
|
||||||
805,Hartlepool,1,North East A
|
|
||||||
806,Middlesbrough,1,North East A
|
|
||||||
807,Redcar and Cleveland,1,North East A
|
|
||||||
808,Stockton-on-Tees,1,North East A
|
|
||||||
390,Gateshead,3,North East B
|
|
||||||
391,Newcastle upon Tyne,3,North East B
|
|
||||||
392,North Tyneside,3,North East B
|
|
||||||
929,Northumberland,3,North East B
|
|
||||||
393,South Tyneside,3,North East B
|
|
||||||
394,Sunderland,3,North East B
|
|
||||||
889,Blackburn with Darwen,6,North West A
|
|
||||||
890,Blackpool,6,North West A
|
|
||||||
942,Cumberland,6,North West A
|
|
||||||
943,Westmorland and Furness ,6,North West A
|
|
||||||
888,Lancashire,6,North West A
|
|
||||||
350,Bolton,7,North West B
|
|
||||||
351,Bury,7,North West B
|
|
||||||
352,Manchester,7,North West B
|
|
||||||
353,Oldham,7,North West B
|
|
||||||
354,Rochdale,7,North West B
|
|
||||||
355,Salford,7,North West B
|
|
||||||
356,Stockport,7,North West B
|
|
||||||
357,Tameside,7,North West B
|
|
||||||
358,Trafford,7,North West B
|
|
||||||
359,Wigan,7,North West B
|
|
||||||
895,Cheshire East,9,North West C
|
|
||||||
896,Cheshire West and Chester,9,North West C
|
|
||||||
876,Halton,9,North West C
|
|
||||||
340,Knowsley,9,North West C
|
|
||||||
341,Liverpool,9,North West C
|
|
||||||
343,Sefton,9,North West C
|
|
||||||
342,St. Helens,9,North West C
|
|
||||||
877,Warrington,9,North West C
|
|
||||||
344,Wirral,9,North West C
|
|
||||||
811,East Riding of Yorkshire,10,North Yorkshire and The Humber
|
|
||||||
810,"Kingston Upon Hull, City of",10,North Yorkshire and The Humber
|
|
||||||
812,North East Lincolnshire,10,North Yorkshire and The Humber
|
|
||||||
813,North Lincolnshire,10,North Yorkshire and The Humber
|
|
||||||
815,North Yorkshire,10,North Yorkshire and The Humber
|
|
||||||
816,York,10,North Yorkshire and The Humber
|
|
||||||
370,Barnsley,12,South and West Yorkshire
|
|
||||||
380,Bradford,12,South and West Yorkshire
|
|
||||||
381,Calderdale,12,South and West Yorkshire
|
|
||||||
371,Doncaster,12,South and West Yorkshire
|
|
||||||
382,Kirklees,12,South and West Yorkshire
|
|
||||||
383,Leeds,12,South and West Yorkshire
|
|
||||||
372,Rotherham,12,South and West Yorkshire
|
|
||||||
373,Sheffield,12,South and West Yorkshire
|
|
||||||
384,Wakefield,12,South and West Yorkshire
|
|
||||||
831,Derby,14,East Midlands A
|
|
||||||
830,Derbyshire,14,East Midlands A
|
|
||||||
892,Nottingham,14,East Midlands A
|
|
||||||
891,Nottinghamshire,14,East Midlands A
|
|
||||||
856,Leicester,16,East Midlands B
|
|
||||||
855,Leicestershire,16,East Midlands B
|
|
||||||
925,Lincolnshire,16,East Midlands B
|
|
||||||
940,North Northamptonshire,16,East Midlands B
|
|
||||||
941,West Northamptonshire,16,East Midlands B
|
|
||||||
857,Rutland,16,East Midlands B
|
|
||||||
893,Shropshire,20,West Midlands A
|
|
||||||
860,Staffordshire,20,West Midlands A
|
|
||||||
861,Stoke-on-Trent,20,West Midlands A
|
|
||||||
894,Telford and Wrekin,20,West Midlands A
|
|
||||||
884,"Herefordshire, County of",22,West Midlands B
|
|
||||||
885,Worcestershire,22,West Midlands B
|
|
||||||
330,Birmingham,24,West Midlands C
|
|
||||||
331,Coventry,24,West Midlands C
|
|
||||||
332,Dudley,24,West Midlands C
|
|
||||||
333,Sandwell,24,West Midlands C
|
|
||||||
334,Solihull,24,West Midlands C
|
|
||||||
335,Walsall,24,West Midlands C
|
|
||||||
937,Warwickshire,24,West Midlands C
|
|
||||||
336,Wolverhampton,24,West Midlands C
|
|
||||||
822,Bedford,25,East of England A
|
|
||||||
873,Cambridgeshire,25,East of England A
|
|
||||||
823,Central Bedfordshire,25,East of England A
|
|
||||||
919,Hertfordshire,25,East of England A
|
|
||||||
821,Luton,25,East of England A
|
|
||||||
874,Peterborough,25,East of England A
|
|
||||||
881,Essex,27,East of England B
|
|
||||||
926,Norfolk,27,East of England B
|
|
||||||
882,Southend-on-Sea,27,East of England B
|
|
||||||
935,Suffolk,27,East of England B
|
|
||||||
883,Thurrock,27,East of England B
|
|
||||||
202,Camden,31,London Central
|
|
||||||
206,Islington,31,London Central
|
|
||||||
207,Kensington and Chelsea,31,London Central
|
|
||||||
208,Lambeth,31,London Central
|
|
||||||
210,Southwark,31,London Central
|
|
||||||
212,Wandsworth,31,London Central
|
|
||||||
213,Westminster,31,London Central
|
|
||||||
301,Barking and Dagenham,32,London East
|
|
||||||
303,Bexley,32,London East
|
|
||||||
201,City of London,32,London East
|
|
||||||
203,Greenwich,32,London East
|
|
||||||
204,Hackney,32,London East
|
|
||||||
311,Havering,32,London East
|
|
||||||
209,Lewisham,32,London East
|
|
||||||
316,Newham,32,London East
|
|
||||||
317,Redbridge,32,London East
|
|
||||||
211,Tower Hamlets,32,London East
|
|
||||||
302,Barnet,33,London North
|
|
||||||
308,Enfield,33,London North
|
|
||||||
309,Haringey,33,London North
|
|
||||||
320,Waltham Forest,33,London North
|
|
||||||
305,Bromley,34,London South
|
|
||||||
306,Croydon,34,London South
|
|
||||||
314,Kingston upon Thames,34,London South
|
|
||||||
315,Merton,34,London South
|
|
||||||
318,Richmond upon Thames,34,London South
|
|
||||||
319,Sutton,34,London South
|
|
||||||
304,Brent,35,London West
|
|
||||||
307,Ealing,35,London West
|
|
||||||
205,Hammersmith and Fulham,35,London West
|
|
||||||
310,Harrow,35,London West
|
|
||||||
312,Hillingdon,35,London West
|
|
||||||
313,Hounslow,35,London West
|
|
||||||
867,Bracknell Forest,36,South East A
|
|
||||||
825,Buckinghamshire,36,South East A
|
|
||||||
826,Milton Keynes,36,South East A
|
|
||||||
931,Oxfordshire,36,South East A
|
|
||||||
870,Reading,36,South East A
|
|
||||||
871,Slough,36,South East A
|
|
||||||
869,West Berkshire,36,South East A
|
|
||||||
868,Windsor and Maidenhead,36,South East A
|
|
||||||
872,Wokingham,36,South East A
|
|
||||||
850,Hampshire,37,South East B
|
|
||||||
921,Isle of Wight,37,South East B
|
|
||||||
851,Portsmouth,37,South East B
|
|
||||||
852,Southampton,37,South East B
|
|
||||||
936,Surrey,38,South East C
|
|
||||||
938,West Sussex,38,South East C
|
|
||||||
846,Brighton and Hove,39,South East D
|
|
||||||
845,East Sussex,39,South East D
|
|
||||||
886,Kent,39,South East D
|
|
||||||
887,Medway,39,South East D
|
|
||||||
839,"Bournemouth, Christchurch and Poole",43,South West A
|
|
||||||
908,Cornwall,43,South West A
|
|
||||||
878,Devon,43,South West A
|
|
||||||
838,Dorset,43,South West A
|
|
||||||
420,Isles of Scilly,43,South West A
|
|
||||||
879,Plymouth,43,South West A
|
|
||||||
933,Somerset,43,South West A
|
|
||||||
880,Torbay,43,South West A
|
|
||||||
800,Bath and North East Somerset,45,South West B
|
|
||||||
801,"Bristol, City of",45,South West B
|
|
||||||
916,Gloucestershire,45,South West B
|
|
||||||
802,North Somerset,45,South West B
|
|
||||||
803,South Gloucestershire,45,South West B
|
|
||||||
866,Swindon,45,South West B
|
|
||||||
865,Wiltshire,45,South West B
|
|
||||||
|
2530
frontend/app.js
2530
frontend/app.js
File diff suppressed because it is too large
Load Diff
@@ -1,6 +0,0 @@
|
|||||||
<svg viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect width="40" height="40" rx="8" fill="#1a1612"/>
|
|
||||||
<circle cx="20" cy="20" r="14" stroke="#e07256" stroke-width="2"/>
|
|
||||||
<path d="M20 8L20 32M12 14L28 14M10 20L30 20M12 26L28 26" stroke="#e07256" stroke-width="1.5" stroke-linecap="round"/>
|
|
||||||
<circle cx="20" cy="20" r="3" fill="#e07256"/>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 374 B |
@@ -1,663 +0,0 @@
|
|||||||
<!doctype html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>SchoolCompare | Compare Primary School Performance</title>
|
|
||||||
|
|
||||||
<!-- Primary Meta Tags -->
|
|
||||||
<meta
|
|
||||||
name="description"
|
|
||||||
content="Compare primary school KS2 performance across England. Search, filter and compare Reading, Writing and Maths results for thousands of schools."
|
|
||||||
/>
|
|
||||||
<meta
|
|
||||||
name="keywords"
|
|
||||||
content="school comparison, KS2 results, primary school performance, England schools, SATs results"
|
|
||||||
/>
|
|
||||||
<meta name="author" content="SchoolCompare" />
|
|
||||||
<meta name="robots" content="index, follow" />
|
|
||||||
|
|
||||||
<!-- Analytics -->
|
|
||||||
<script
|
|
||||||
defer
|
|
||||||
src="https://analytics.schoolcompare.co.uk/script.js"
|
|
||||||
data-website-id="d7fb0c95-bb6c-4336-8209-bd10077e50dd"
|
|
||||||
></script>
|
|
||||||
|
|
||||||
<!-- Favicon -->
|
|
||||||
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
||||||
|
|
||||||
<!-- Canonical -->
|
|
||||||
<link rel="canonical" href="https://schoolcompare.co.uk/" />
|
|
||||||
|
|
||||||
<!-- Open Graph / Facebook -->
|
|
||||||
<meta property="og:type" content="website" />
|
|
||||||
<meta property="og:url" content="https://schoolcompare.co.uk/" />
|
|
||||||
<meta
|
|
||||||
property="og:title"
|
|
||||||
content="SchoolCompare | Compare Primary School Performance"
|
|
||||||
/>
|
|
||||||
<meta
|
|
||||||
property="og:description"
|
|
||||||
content="Compare primary school KS2 performance across England. Search and compare Reading, Writing and Maths results."
|
|
||||||
/>
|
|
||||||
<meta property="og:site_name" content="SchoolCompare" />
|
|
||||||
|
|
||||||
<!-- Twitter -->
|
|
||||||
<meta name="twitter:card" content="summary" />
|
|
||||||
<meta name="twitter:url" content="https://schoolcompare.co.uk/" />
|
|
||||||
<meta
|
|
||||||
name="twitter:title"
|
|
||||||
content="SchoolCompare | Compare Primary School Performance"
|
|
||||||
/>
|
|
||||||
<meta
|
|
||||||
name="twitter:description"
|
|
||||||
content="Compare primary school KS2 performance across England."
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!-- JSON-LD Structured Data -->
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "WebApplication",
|
|
||||||
"name": "SchoolCompare",
|
|
||||||
"url": "https://schoolcompare.co.uk",
|
|
||||||
"description": "Compare primary school KS2 performance across England",
|
|
||||||
"applicationCategory": "EducationalApplication",
|
|
||||||
"operatingSystem": "Web",
|
|
||||||
"offers": {
|
|
||||||
"@type": "Offer",
|
|
||||||
"price": "0",
|
|
||||||
"priceCurrency": "GBP"
|
|
||||||
},
|
|
||||||
"author": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "SchoolCompare",
|
|
||||||
"url": "https://schoolcompare.co.uk"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&family=Playfair+Display:wght@600;700&display=swap"
|
|
||||||
rel="stylesheet"
|
|
||||||
/>
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
||||||
<!-- Leaflet Map Library -->
|
|
||||||
<link
|
|
||||||
rel="stylesheet"
|
|
||||||
href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
|
|
||||||
integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
|
|
||||||
crossorigin=""
|
|
||||||
/>
|
|
||||||
<script
|
|
||||||
src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"
|
|
||||||
integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo="
|
|
||||||
crossorigin=""
|
|
||||||
></script>
|
|
||||||
<link rel="stylesheet" href="/static/styles.css" />
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="noise-overlay"></div>
|
|
||||||
|
|
||||||
<header class="header">
|
|
||||||
<div class="header-content">
|
|
||||||
<a href="/" class="logo">
|
|
||||||
<div class="logo-icon">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 40 40"
|
|
||||||
fill="none"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
>
|
|
||||||
<circle
|
|
||||||
cx="20"
|
|
||||||
cy="20"
|
|
||||||
r="18"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
/>
|
|
||||||
<path
|
|
||||||
d="M20 8L20 32M12 14L28 14M10 20L30 20M12 26L28 26"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="1.5"
|
|
||||||
stroke-linecap="round"
|
|
||||||
/>
|
|
||||||
<circle cx="20" cy="20" r="4" fill="currentColor" />
|
|
||||||
</svg>
|
|
||||||
</div>
|
|
||||||
<div class="logo-text">
|
|
||||||
<span class="logo-title">SchoolCompare</span>
|
|
||||||
<span class="logo-subtitle">schoolcompare.co.uk</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<nav class="nav">
|
|
||||||
<a href="/" class="nav-link active" data-view="home"
|
|
||||||
>Home</a
|
|
||||||
>
|
|
||||||
<a href="/compare" class="nav-link" data-view="compare"
|
|
||||||
>Compare</a
|
|
||||||
>
|
|
||||||
<a href="/rankings" class="nav-link" data-view="rankings"
|
|
||||||
>Rankings</a
|
|
||||||
>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main class="main">
|
|
||||||
<!-- Home View -->
|
|
||||||
<section id="home-view" class="view active">
|
|
||||||
<div class="hero">
|
|
||||||
<h1 class="hero-title">
|
|
||||||
Compare Primary School Performance
|
|
||||||
</h1>
|
|
||||||
<p class="hero-subtitle">
|
|
||||||
Search and compare KS2 results across England's primary
|
|
||||||
schools
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="search-section">
|
|
||||||
<div class="search-mode-toggle">
|
|
||||||
<button class="search-mode-btn active" data-mode="name">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
width="16"
|
|
||||||
height="16"
|
|
||||||
>
|
|
||||||
<circle cx="11" cy="11" r="8" />
|
|
||||||
<path d="M21 21l-4.35-4.35" />
|
|
||||||
</svg>
|
|
||||||
Find by Name
|
|
||||||
</button>
|
|
||||||
<button class="search-mode-btn" data-mode="location">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
width="16"
|
|
||||||
height="16"
|
|
||||||
>
|
|
||||||
<path
|
|
||||||
d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"
|
|
||||||
/>
|
|
||||||
<circle cx="12" cy="10" r="3" />
|
|
||||||
</svg>
|
|
||||||
Find by Location
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="name-search-panel" class="search-panel active">
|
|
||||||
<div class="search-container">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
id="school-search"
|
|
||||||
class="search-input"
|
|
||||||
placeholder="Search primary schools by name..."
|
|
||||||
/>
|
|
||||||
<div class="search-icon">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
>
|
|
||||||
<circle cx="11" cy="11" r="8" />
|
|
||||||
<path d="M21 21l-4.35-4.35" />
|
|
||||||
</svg>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="filter-row">
|
|
||||||
<select
|
|
||||||
id="local-authority-filter"
|
|
||||||
class="filter-select"
|
|
||||||
>
|
|
||||||
<option value="">All Areas</option>
|
|
||||||
</select>
|
|
||||||
<select id="type-filter" class="filter-select">
|
|
||||||
<option value="">All School Types</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="location-search-panel" class="search-panel">
|
|
||||||
<div class="location-input-group">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
id="postcode-search"
|
|
||||||
class="search-input postcode-input"
|
|
||||||
placeholder="Enter postcode..."
|
|
||||||
/>
|
|
||||||
<select
|
|
||||||
id="radius-select"
|
|
||||||
class="filter-select radius-select"
|
|
||||||
>
|
|
||||||
<option value="0.5" selected>1/2 mile</option>
|
|
||||||
<option value="1">1 mile</option>
|
|
||||||
<option value="2">2 miles</option>
|
|
||||||
</select>
|
|
||||||
<select
|
|
||||||
id="type-filter-location"
|
|
||||||
class="filter-select"
|
|
||||||
>
|
|
||||||
<option value="">All School Types</option>
|
|
||||||
</select>
|
|
||||||
<button
|
|
||||||
id="location-search-btn"
|
|
||||||
class="btn btn-primary location-btn"
|
|
||||||
>
|
|
||||||
Find Nearby
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="view-toggle" id="view-toggle" style="display: none">
|
|
||||||
<button class="view-toggle-btn active" data-view="list">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
width="16"
|
|
||||||
height="16"
|
|
||||||
>
|
|
||||||
<line x1="8" y1="6" x2="21" y2="6" />
|
|
||||||
<line x1="8" y1="12" x2="21" y2="12" />
|
|
||||||
<line x1="8" y1="18" x2="21" y2="18" />
|
|
||||||
<line x1="3" y1="6" x2="3.01" y2="6" />
|
|
||||||
<line x1="3" y1="12" x2="3.01" y2="12" />
|
|
||||||
<line x1="3" y1="18" x2="3.01" y2="18" />
|
|
||||||
</svg>
|
|
||||||
List
|
|
||||||
</button>
|
|
||||||
<button class="view-toggle-btn" data-view="map">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
width="16"
|
|
||||||
height="16"
|
|
||||||
>
|
|
||||||
<path
|
|
||||||
d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"
|
|
||||||
/>
|
|
||||||
<circle cx="12" cy="10" r="3" />
|
|
||||||
</svg>
|
|
||||||
Map
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="results-container" id="results-container">
|
|
||||||
<div class="results-map" id="results-map"></div>
|
|
||||||
<div class="schools-grid" id="schools-grid">
|
|
||||||
<!-- School cards populated by JS -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- Compare View -->
|
|
||||||
<section id="compare-view" class="view">
|
|
||||||
<div class="compare-header">
|
|
||||||
<h2 class="section-title">Compare Primary Schools</h2>
|
|
||||||
<p class="section-subtitle">
|
|
||||||
Select schools to compare their KS2 performance over
|
|
||||||
time
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="compare-search-section">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
id="compare-search"
|
|
||||||
class="search-input"
|
|
||||||
placeholder="Add a school to compare..."
|
|
||||||
/>
|
|
||||||
<div id="compare-results" class="compare-results"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="selected-schools" id="selected-schools">
|
|
||||||
<div class="empty-selection">
|
|
||||||
<div class="empty-icon">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 48 48"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="1.5"
|
|
||||||
>
|
|
||||||
<rect
|
|
||||||
x="6"
|
|
||||||
y="10"
|
|
||||||
width="36"
|
|
||||||
height="28"
|
|
||||||
rx="2"
|
|
||||||
/>
|
|
||||||
<path d="M6 18h36" />
|
|
||||||
<circle
|
|
||||||
cx="14"
|
|
||||||
cy="14"
|
|
||||||
r="2"
|
|
||||||
fill="currentColor"
|
|
||||||
/>
|
|
||||||
<circle
|
|
||||||
cx="22"
|
|
||||||
cy="14"
|
|
||||||
r="2"
|
|
||||||
fill="currentColor"
|
|
||||||
/>
|
|
||||||
</svg>
|
|
||||||
</div>
|
|
||||||
<p>Search and add schools to compare</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div
|
|
||||||
class="charts-section"
|
|
||||||
id="charts-section"
|
|
||||||
style="display: none"
|
|
||||||
>
|
|
||||||
<div class="metric-selector">
|
|
||||||
<label>Select KS2 Metric:</label>
|
|
||||||
<select id="metric-select" class="filter-select">
|
|
||||||
<optgroup label="Expected Standard">
|
|
||||||
<option value="rwm_expected_pct">
|
|
||||||
Reading, Writing & Maths Combined %
|
|
||||||
</option>
|
|
||||||
<option value="reading_expected_pct">
|
|
||||||
Reading Expected %
|
|
||||||
</option>
|
|
||||||
<option value="writing_expected_pct">
|
|
||||||
Writing Expected %
|
|
||||||
</option>
|
|
||||||
<option value="maths_expected_pct">
|
|
||||||
Maths Expected %
|
|
||||||
</option>
|
|
||||||
<option value="gps_expected_pct">
|
|
||||||
GPS Expected %
|
|
||||||
</option>
|
|
||||||
<option value="science_expected_pct">
|
|
||||||
Science Expected %
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Higher Standard">
|
|
||||||
<option value="rwm_high_pct">
|
|
||||||
RWM Combined Higher %
|
|
||||||
</option>
|
|
||||||
<option value="reading_high_pct">
|
|
||||||
Reading Higher %
|
|
||||||
</option>
|
|
||||||
<option value="writing_high_pct">
|
|
||||||
Writing Higher %
|
|
||||||
</option>
|
|
||||||
<option value="maths_high_pct">
|
|
||||||
Maths Higher %
|
|
||||||
</option>
|
|
||||||
<option value="gps_high_pct">
|
|
||||||
GPS Higher %
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Progress Scores">
|
|
||||||
<option value="reading_progress">
|
|
||||||
Reading Progress
|
|
||||||
</option>
|
|
||||||
<option value="writing_progress">
|
|
||||||
Writing Progress
|
|
||||||
</option>
|
|
||||||
<option value="maths_progress">
|
|
||||||
Maths Progress
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Average Scores">
|
|
||||||
<option value="reading_avg_score">
|
|
||||||
Reading Avg Score
|
|
||||||
</option>
|
|
||||||
<option value="maths_avg_score">
|
|
||||||
Maths Avg Score
|
|
||||||
</option>
|
|
||||||
<option value="gps_avg_score">
|
|
||||||
GPS Avg Score
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Gender Performance">
|
|
||||||
<option value="rwm_expected_boys_pct">
|
|
||||||
RWM Expected % (Boys)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_expected_girls_pct">
|
|
||||||
RWM Expected % (Girls)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_high_boys_pct">
|
|
||||||
RWM Higher % (Boys)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_high_girls_pct">
|
|
||||||
RWM Higher % (Girls)
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Equity (Disadvantaged)">
|
|
||||||
<option value="rwm_expected_disadvantaged_pct">
|
|
||||||
RWM Expected % (Disadvantaged)
|
|
||||||
</option>
|
|
||||||
<option
|
|
||||||
value="rwm_expected_non_disadvantaged_pct"
|
|
||||||
>
|
|
||||||
RWM Expected % (Non-Disadvantaged)
|
|
||||||
</option>
|
|
||||||
<option value="disadvantaged_gap">
|
|
||||||
Disadvantaged Gap vs National
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="School Context">
|
|
||||||
<option value="disadvantaged_pct">
|
|
||||||
% Disadvantaged Pupils
|
|
||||||
</option>
|
|
||||||
<option value="eal_pct">% EAL Pupils</option>
|
|
||||||
<option value="sen_support_pct">
|
|
||||||
% SEN Support
|
|
||||||
</option>
|
|
||||||
<option value="stability_pct">
|
|
||||||
% Pupil Stability
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="3-Year Trends">
|
|
||||||
<option value="rwm_expected_3yr_pct">
|
|
||||||
RWM Expected % (3-Year Avg)
|
|
||||||
</option>
|
|
||||||
<option value="reading_avg_3yr">
|
|
||||||
Reading Score (3-Year Avg)
|
|
||||||
</option>
|
|
||||||
<option value="maths_avg_3yr">
|
|
||||||
Maths Score (3-Year Avg)
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="chart-container">
|
|
||||||
<canvas id="comparison-chart"></canvas>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="data-table-container">
|
|
||||||
<table class="data-table" id="comparison-table">
|
|
||||||
<thead>
|
|
||||||
<tr id="table-header"></tr>
|
|
||||||
</thead>
|
|
||||||
<tbody id="table-body"></tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- Rankings View -->
|
|
||||||
<section id="rankings-view" class="view">
|
|
||||||
<div class="rankings-header">
|
|
||||||
<h2 class="section-title">Primary School Rankings</h2>
|
|
||||||
<p class="section-subtitle">
|
|
||||||
Top performing primary schools ranked by KS2 metric
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="rankings-controls">
|
|
||||||
<select id="ranking-area" class="filter-select">
|
|
||||||
<option value="">All Areas</option>
|
|
||||||
<!-- Populated by JS -->
|
|
||||||
</select>
|
|
||||||
<select id="ranking-metric" class="filter-select">
|
|
||||||
<optgroup label="Expected Standard">
|
|
||||||
<option value="rwm_expected_pct">
|
|
||||||
Reading, Writing & Maths Combined %
|
|
||||||
</option>
|
|
||||||
<option value="reading_expected_pct">
|
|
||||||
Reading Expected %
|
|
||||||
</option>
|
|
||||||
<option value="writing_expected_pct">
|
|
||||||
Writing Expected %
|
|
||||||
</option>
|
|
||||||
<option value="maths_expected_pct">
|
|
||||||
Maths Expected %
|
|
||||||
</option>
|
|
||||||
<option value="gps_expected_pct">
|
|
||||||
GPS Expected %
|
|
||||||
</option>
|
|
||||||
<option value="science_expected_pct">
|
|
||||||
Science Expected %
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Higher Standard">
|
|
||||||
<option value="rwm_high_pct">
|
|
||||||
RWM Combined Higher %
|
|
||||||
</option>
|
|
||||||
<option value="reading_high_pct">
|
|
||||||
Reading Higher %
|
|
||||||
</option>
|
|
||||||
<option value="writing_high_pct">
|
|
||||||
Writing Higher %
|
|
||||||
</option>
|
|
||||||
<option value="maths_high_pct">
|
|
||||||
Maths Higher %
|
|
||||||
</option>
|
|
||||||
<option value="gps_high_pct">GPS Higher %</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Progress Scores">
|
|
||||||
<option value="reading_progress">
|
|
||||||
Reading Progress
|
|
||||||
</option>
|
|
||||||
<option value="writing_progress">
|
|
||||||
Writing Progress
|
|
||||||
</option>
|
|
||||||
<option value="maths_progress">
|
|
||||||
Maths Progress
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Average Scores">
|
|
||||||
<option value="reading_avg_score">
|
|
||||||
Reading Avg Score
|
|
||||||
</option>
|
|
||||||
<option value="maths_avg_score">
|
|
||||||
Maths Avg Score
|
|
||||||
</option>
|
|
||||||
<option value="gps_avg_score">GPS Avg Score</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Gender Performance">
|
|
||||||
<option value="rwm_expected_boys_pct">
|
|
||||||
RWM Expected % (Boys)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_expected_girls_pct">
|
|
||||||
RWM Expected % (Girls)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_high_boys_pct">
|
|
||||||
RWM Higher % (Boys)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_high_girls_pct">
|
|
||||||
RWM Higher % (Girls)
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="Equity (Disadvantaged)">
|
|
||||||
<option value="rwm_expected_disadvantaged_pct">
|
|
||||||
RWM Expected % (Disadvantaged)
|
|
||||||
</option>
|
|
||||||
<option value="rwm_expected_non_disadvantaged_pct">
|
|
||||||
RWM Expected % (Non-Disadvantaged)
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
<optgroup label="3-Year Trends">
|
|
||||||
<option value="rwm_expected_3yr_pct">
|
|
||||||
RWM Expected % (3-Year Avg)
|
|
||||||
</option>
|
|
||||||
</optgroup>
|
|
||||||
</select>
|
|
||||||
<select id="ranking-year" class="filter-select">
|
|
||||||
<!-- Populated by JS -->
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="rankings-list" id="rankings-list">
|
|
||||||
<!-- Rankings populated by JS -->
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<!-- School Detail Modal -->
|
|
||||||
<div class="modal" id="school-modal">
|
|
||||||
<div class="modal-backdrop"></div>
|
|
||||||
<div class="modal-content">
|
|
||||||
<button class="modal-close" id="modal-close">
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
>
|
|
||||||
<path d="M18 6L6 18M6 6l12 12" />
|
|
||||||
</svg>
|
|
||||||
</button>
|
|
||||||
<div class="modal-header">
|
|
||||||
<button
|
|
||||||
class="btn btn-primary modal-compare-btn"
|
|
||||||
id="add-to-compare"
|
|
||||||
>
|
|
||||||
Add to Compare
|
|
||||||
</button>
|
|
||||||
<h2 id="modal-school-name"></h2>
|
|
||||||
<div class="modal-meta" id="modal-meta"></div>
|
|
||||||
<div class="modal-details" id="modal-details"></div>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div class="modal-chart-container">
|
|
||||||
<canvas id="school-detail-chart"></canvas>
|
|
||||||
</div>
|
|
||||||
<div class="modal-stats" id="modal-stats"></div>
|
|
||||||
<div class="modal-map-container" id="modal-map-container">
|
|
||||||
<h4>Location</h4>
|
|
||||||
<div class="modal-map" id="modal-map"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<footer class="footer">
|
|
||||||
<div class="footer-content">
|
|
||||||
<div class="footer-contact">
|
|
||||||
<a href="mailto:contact@schoolcompare.co.uk">Contact Us</a>
|
|
||||||
</div>
|
|
||||||
<div class="footer-source">
|
|
||||||
<p>
|
|
||||||
Data source:
|
|
||||||
<a
|
|
||||||
href="https://www.compare-school-performance.service.gov.uk/"
|
|
||||||
target="_blank"
|
|
||||||
>UK Government - Compare School Performance</a
|
|
||||||
>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script src="/static/app.js"></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
User-agent: *
|
|
||||||
Allow: /
|
|
||||||
Allow: /compare
|
|
||||||
Allow: /rankings
|
|
||||||
|
|
||||||
Disallow: /api/
|
|
||||||
|
|
||||||
Sitemap: https://schoolcompare.co.uk/sitemap.xml
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
|
||||||
<url>
|
|
||||||
<loc>https://schoolcompare.co.uk/</loc>
|
|
||||||
<changefreq>weekly</changefreq>
|
|
||||||
<priority>1.0</priority>
|
|
||||||
</url>
|
|
||||||
<url>
|
|
||||||
<loc>https://schoolcompare.co.uk/compare</loc>
|
|
||||||
<changefreq>weekly</changefreq>
|
|
||||||
<priority>0.8</priority>
|
|
||||||
</url>
|
|
||||||
<url>
|
|
||||||
<loc>https://schoolcompare.co.uk/rankings</loc>
|
|
||||||
<changefreq>weekly</changefreq>
|
|
||||||
<priority>0.8</priority>
|
|
||||||
</url>
|
|
||||||
</urlset>
|
|
||||||
1903
frontend/styles.css
1903
frontend/styles.css
File diff suppressed because it is too large
Load Diff
@@ -18,7 +18,7 @@ import {
|
|||||||
ChartOptions,
|
ChartOptions,
|
||||||
} from 'chart.js';
|
} from 'chart.js';
|
||||||
import type { ComparisonData } from '@/lib/types';
|
import type { ComparisonData } from '@/lib/types';
|
||||||
import { CHART_COLORS } from '@/lib/utils';
|
import { CHART_COLORS, formatAcademicYear } from '@/lib/utils';
|
||||||
|
|
||||||
// Register Chart.js components
|
// Register Chart.js components
|
||||||
ChartJS.register(
|
ChartJS.register(
|
||||||
@@ -68,7 +68,7 @@ export function ComparisonChart({ comparisonData, metric, metricLabel }: Compari
|
|||||||
});
|
});
|
||||||
|
|
||||||
const chartData = {
|
const chartData = {
|
||||||
labels: years.map(String),
|
labels: years.map(formatAcademicYear),
|
||||||
datasets,
|
datasets,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import { SchoolSearchModal } from './SchoolSearchModal';
|
|||||||
import { EmptyState } from './EmptyState';
|
import { EmptyState } from './EmptyState';
|
||||||
import { LoadingSkeleton } from './LoadingSkeleton';
|
import { LoadingSkeleton } from './LoadingSkeleton';
|
||||||
import type { ComparisonData, MetricDefinition, School } from '@/lib/types';
|
import type { ComparisonData, MetricDefinition, School } from '@/lib/types';
|
||||||
import { formatPercentage, formatProgress, CHART_COLORS, schoolUrl } from '@/lib/utils';
|
import { formatPercentage, formatProgress, formatAcademicYear, CHART_COLORS, schoolUrl } from '@/lib/utils';
|
||||||
import { fetchComparison } from '@/lib/api';
|
import { fetchComparison } from '@/lib/api';
|
||||||
import styles from './ComparisonView.module.css';
|
import styles from './ComparisonView.module.css';
|
||||||
|
|
||||||
@@ -392,7 +392,7 @@ export function ComparisonView({
|
|||||||
<tbody>
|
<tbody>
|
||||||
{years.map((year) => (
|
{years.map((year) => (
|
||||||
<tr key={year}>
|
<tr key={year}>
|
||||||
<td className={styles.yearCell}>{year}</td>
|
<td className={styles.yearCell}>{formatAcademicYear(year)}</td>
|
||||||
{activeSchools.map((school) => {
|
{activeSchools.map((school) => {
|
||||||
const schoolData = activeComparisonData[school.urn];
|
const schoolData = activeComparisonData[school.urn];
|
||||||
if (!schoolData) return <td key={school.urn}>-</td>;
|
if (!schoolData) return <td key={school.urn}>-</td>;
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import {
|
|||||||
ChartOptions,
|
ChartOptions,
|
||||||
} from 'chart.js';
|
} from 'chart.js';
|
||||||
import type { SchoolResult } from '@/lib/types';
|
import type { SchoolResult } from '@/lib/types';
|
||||||
|
import { formatAcademicYear } from '@/lib/utils';
|
||||||
import styles from './PerformanceChart.module.css';
|
import styles from './PerformanceChart.module.css';
|
||||||
|
|
||||||
// Register Chart.js components
|
// Register Chart.js components
|
||||||
@@ -40,11 +41,7 @@ interface PerformanceChartProps {
|
|||||||
export function PerformanceChart({ data, schoolName, isSecondary = false }: PerformanceChartProps) {
|
export function PerformanceChart({ data, schoolName, isSecondary = false }: PerformanceChartProps) {
|
||||||
// Sort data by year
|
// Sort data by year
|
||||||
const sortedData = [...data].sort((a, b) => a.year - b.year);
|
const sortedData = [...data].sort((a, b) => a.year - b.year);
|
||||||
const formatYear = (y: number) => {
|
const years = sortedData.map(d => formatAcademicYear(d.year));
|
||||||
const s = y.toString();
|
|
||||||
return s.length === 6 ? `${s.slice(0, 4)}/${s.slice(4)}` : s;
|
|
||||||
};
|
|
||||||
const years = sortedData.map(d => formatYear(d.year));
|
|
||||||
|
|
||||||
// Prepare datasets — phase-aware
|
// Prepare datasets — phase-aware
|
||||||
const datasets = isSecondary ? [
|
const datasets = isSecondary ? [
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
import { useRouter, usePathname, useSearchParams } from 'next/navigation';
|
import { useRouter, usePathname, useSearchParams } from 'next/navigation';
|
||||||
import { useComparison } from '@/hooks/useComparison';
|
import { useComparison } from '@/hooks/useComparison';
|
||||||
import type { RankingEntry, Filters, MetricDefinition } from '@/lib/types';
|
import type { RankingEntry, Filters, MetricDefinition } from '@/lib/types';
|
||||||
import { formatPercentage, formatProgress, schoolUrl } from '@/lib/utils';
|
import { formatPercentage, formatProgress, formatAcademicYear, schoolUrl } from '@/lib/utils';
|
||||||
import { EmptyState } from './EmptyState';
|
import { EmptyState } from './EmptyState';
|
||||||
import styles from './RankingsView.module.css';
|
import styles from './RankingsView.module.css';
|
||||||
|
|
||||||
@@ -199,11 +199,11 @@ export function RankingsView({
|
|||||||
className={styles.filterSelect}
|
className={styles.filterSelect}
|
||||||
>
|
>
|
||||||
<option value="">
|
<option value="">
|
||||||
{filters.years.length > 0 ? `${Math.max(...filters.years)} (Latest)` : 'Latest'}
|
{filters.years.length > 0 ? `${formatAcademicYear(Math.max(...filters.years))} (Latest)` : 'Latest'}
|
||||||
</option>
|
</option>
|
||||||
{filters.years.map((year) => (
|
{filters.years.map((year) => (
|
||||||
<option key={year} value={year}>
|
<option key={year} value={year}>
|
||||||
{year}
|
{formatAcademicYear(year)}
|
||||||
</option>
|
</option>
|
||||||
))}
|
))}
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
Reference in New Issue
Block a user