Pick your classes — the first time the choice is theirs
Middle school is where a student first chooses: band or art, a world language, a STEM or maker elective. The course-request flow is built to be theirs to drive. A request is prerequisite-aware, but the prerequisite gate is ADVISORY — an unmet prereq is SURFACED for a registrar to weigh, never a silent hard block. An over-capacity elective is WAITLISTED, never quietly dropped and never pushed past the cap. Requests are open only inside the registration window (a missing or malformed window fails CLOSED), and every request is fail-closed on authorization. Behind the requests, a deterministic whole-timetable solver places sections against the bell structure, rooms, and teacher availability — honoring team/house grouping — and leaves an unplaceable section UNPLACED with an explainable reason rather than forcing it into a clash. It reasons over structure only: opaque section and cohort keys, never a student name.
Built · advisory prereqs · waitlist not drop
The middle-school day — not a high-school master schedule
A middle-grades day is its own shape: a rotation of core and exploratory classes, an advisory block, one or two lunch waves, and an activity period — not a high-school transcript engine. We say that on purpose: there is no credit-hour ledger here, no GPA weighting, and no transcript-driven course sequencing anywhere in the platform, because the middle grades don't run on one. A lunch wave or an activity-period block is booked with the same fixed-slot capacity law already used for picture-day and admissions-interview scheduling — a slot is keyed by an opaque identity (a wave, a room, a block), capacity is an exact integer (a capacity of zero is a valid, always-full slot), and a seat is only ever counted by an exact key match, never a time-window guess. Full-day placement — rotations, exploratory courses, and the advisory block sitting against rooms and teacher availability — is the same deterministic master-schedule solver the course-request pillar already describes. One capacity-slot law, one solver, no borrowed high-school baggage.
Built · capacity-slot law · no credit/GPA machinery
Advisory, teams & houses — a small group that knows every kid
The middle-grades day is anchored by a small advisory or homeroom group, and many schools organize the grade into teams or houses. The master-schedule solver treats team/house grouping as a first-class structural constraint, so an advisory cohort holds together across the timetable — expressed as an opaque cohort slug, never a student identity. On top of that grouping sits an SEL substrate: social-emotional curriculum units, staff-facing competency screeners, and a deterministic dashboard roll-up with no AI, no sentiment scoring, and no model anywhere — every band is a pure function of staff-recorded facts. Honest-off, on purpose: the STUDENT-facing check-in / mood INPUT surface is held pending consent and counsel — it stores nothing and scores nothing today. The advisory grouping and the staff-facing SEL screeners are built; the student mood-input surface is honest-off.
Built · student mood-input surface honest-off
One team, one adviser view — roster, wobbles, clubs, and family messages together
An adviser shouldn't have to open four tabs to know their own team. The console rolls up, per team/house cohort: the advisory roster itself (the same team/house cohort key the master-schedule solver already holds together); each student's attendance-intervention picture — a chronic-absence band, a tier recommendation that is a data-trend FLAG for the team to weigh (the engine NEVER auto-refers a case to court — refersToCourt is always literal false, a human-review flag, never an auto-file), and a truancy flag, all over opaque student references, staff-only and denied to a minor session; club and activity membership for the team's own students, read through the same consent gate the clubs engine defends everywhere else — a suppressed, do-not-publish student's name is stripped from the roster and the count stays honest rather than silently wrong, and only an adviser on the allowlist can open it; and family messages as a first-class, honestly-labelled status, not a silo. A guardian letter routes through the identical consent chokepoint that gates the club roster, reports zero-recipients or suppressed plainly rather than faking a send, and — honest-off, on purpose — a letter is generated and queued, never claimed as mailed, until a print/mail provider is provisioned. One team. One adviser view. Every column as consent-honest as the rest of this page.
Built · staff-only · letters queued not mailed
Clubs, activities & first teams — with the safety rails on
This is the first taste of clubs, activities, and interscholastic teams, so the child-safety rails matter more here than anywhere. Event and trip sign-ups are consent-and-capacity gated and fail closed — no positive consent means no sign-up, and a full activity waitlists rather than overflows. Athletic eligibility folds academic, physical, and forms axes into one roster view that NEVER auto-denies a kid: any missing or ambiguous input resolves to needs-review for the athletic director, never to ineligible. A physical-clearance record is fail-closed the other way — no current, valid physical means not cleared to play, and the private medical detail behind that yes/no is walled behind health-records consent. Field-trip chaperone assignment reads a recorded background-check status and denies by default without a real, current clearance. Honest-off: the background-CHECK RUN itself stays off until a licensed provider is provisioned — the engine reads a screening, it does not perform one — and the spirit store settles no money on this site.
Built · screening-run & money honest-off
Gradebook & standards-based report cards — mastery, not just a letter
Middle grades are where many schools report by skill rather than by a single letter. The gradebook is built, and on top of it a standards-based report-card model rolls up mastery PER standard from the tagged proficiency the gradebook already produced — deterministically, as a REPORT MODEL over the existing gradebook, not a second parallel gradebook and not a new student table. A student is referenced by an opaque roster id; the report is surfaced through a consent gate. Report-card comments are supported. Honest scope: this is an enrollment-and-records daily-driver that COMPLEMENTS a school's system of record — it is not a certified, full academic system-of-record. We say so rather than imply a certification we do not hold.
Built · consent-gated · records tier free
Counselor & MTSS — catch a wobble early, keep the record private
The middle grades are when a small slip can compound, so the supports that catch it early are core. The MTSS / RTI substrate carries a student's tier (1 universal / 2 targeted / 3 intensive), the intervention, its frequency, and progress-monitoring data points — and it is ADVISORY: a tier-recommendation is a data-trend FLAG the team reviews, never a tier the system moves on its own. The counselor caseload surface mounts confidential notes under a FERPA sole-possession rule with fail-closed authorization. Attendance-intervention flags truancy risk, and a dyslexia screener is built. All of it is sensitive child PII on the strictest privacy lane — consent-gated, walled, and never made public. It tracks and flags; it does not diagnose, and nothing here is medical or legal advice.
Built · advisory · privacy-walled
The move up to high school — promotion & records that follow the student
Middle school ends with a transition, and the platform is built for that hand-off. Year-end promotion / retention is ADVISORY: it never auto-retains a student without a recorded policy basis — the registrar owns the decision, and the promotion roll-up is a cohort advisory, not an action. When a student moves up (or moves schools mid-year), a records transfer packages the cumulative education record and logs it as a FERPA 99.32 disclosure on an append-only basis — because transferring a student's record IS a disclosure, and it should be recorded as one. Both flows are registrar / records-office only, both are the highest-sensitivity FERPA class, and neither uses AI. This is the one high-school-facing capability the page claims: the bridge up, not a high-school transcript or GPA product.
Built · advisory promotion · FERPA-logged transfer