Start here
One idea holds the whole thing together
A class never gets its subjects one-by-one. It inherits them from a stream — a section letter within an education phase. Set a stream’s subjects once, and every class in that section carries them.
Form 1 A and Form 2 A share subjects — they’re the same stream (O-Level A). But Form 1 A and Form 1 B can differ — different sections, different streams.
The setup wizard
Seven steps, in order
The wizard saves after every step, so you can leave and return. By the end of step 4 your classes already exist with subjects attached — you never map subjects to classes by hand.
-
School details
Name, contact, logo, and curriculum type (new or old). Everything downstream is scoped to this school.
-
Education levels
Tick the phases you run — Early Childhood, Primary, O-Level, A-Level. This decides which template subjects and grades you’ll be offered.
-
Subjects
Pick from the ready-made subject list for your levels. Compulsory subjects are pre-ticked. Mark your core subjects as compulsory here — it decides what seeds onto new classes.
-
Classes
For each grade, choose how many sections and name them. Classes are created and their subjects attach automatically from the stream template.
✓ classes now exist with subjects -
Academic year & terms
Adopt a standard calendar or define your own. Set exactly one year as current — everything “this year” keys off it.
-
Exams & grading
Your grading scale, pass mark, and the assessments per term (continuous assessment and end-of-term).
-
Graduation criteria
Examination grades and promotion rules. Finish to mark setup complete.
The subject model
Core versus Options
Every subject on a class is one of two kinds. The distinction is what lets two sections of the same grade carry different subjects.
CORE
Taken by everyone in the class. The national/compulsory subjects — English, Mathematics, Civic Education — plus whatever your school requires of all pupils. Shared identically across every section of the phase.
OPTION
The section’s elective bundle. In your school’s per-class model, the whole section takes the same options — so Form 1 A’s sciences bundle can differ from Form 1 B’s commerce bundle.
What this looks like in practice
Two sections of the same grade, same core, different options:
| Class | Core (shared) | Options (differ) |
|---|---|---|
| Form 1 A | CivicComputerEnglishMaths |
Agric. ScienceBiologyAccounts |
| Form 1 B | CivicComputerEnglishMaths |
CommerceDesign & TechPhysics |
How inheritance works
Streams span grades — unless you scope them
By default a stream’s subjects apply to every grade in the section, so Form 1 A through Form 4 A match. When that isn’t what you want, you scope a subject to specific grades.
When to scope by grade
Two common cases where the section shouldn’t simply inherit everything:
Streaming at senior level
If pupils only choose a science or arts pathway from Form 4, scope that option bundle to FORM 4 so it doesn’t appear on Form 1 A of the same section.
Lower vs Upper Primary
Grades 1–3 and Grades 4–6 have different learning areas even in the same section. Scope each set to its grades so a Grade 1 class doesn’t inherit upper-primary subjects.
Edit a stream once, and every class follows Change the subjects on the Streams & Subjects page and all classes in that section re-derive. Subjects that already have marks recorded are never removed automatically — your data is safe.
Optional
Pathways: named option bundles
A pathway — Science, Business, Arts, Technical — is a saved bundle of subjects you can apply to a class in one move. Assigning a pathway writes its subjects into that class’s stream as options, then the class re-derives.
Use pathways when you run recognisable subject groupings and want to set a class up in one action rather than picking options individually. Compulsory subjects in the pathway land as CORE; the rest as OPTION, pinned to that class’s grade so they don’t leak across the whole section.
Before you rely on it
Four things that quietly go wrong
Mark your core subjects as Compulsory Only compulsory subjects seed onto new classes. If a school’s subjects aren’t marked compulsory, a newly created class starts with an empty subject list and you’ll add everything by hand.
One record per subject — avoid duplicates Some schools accumulate several “Mathematics” or “English” records. Each duplicate seeds separately, so a pupil ends up with the same subject listed two or three times — and it repeats on report cards. Keep a single record per subject.
Set the current academic year consistently Classes attach to a year. If you create classes and then name a different year as current, the classes stay on the old one and current-year views show “no classes.” Confirm the current year matches the year your classes were created in.
Don’t stream electives at the wrong grade Because sections inherit across grades, an option added without a grade scope appears on every grade in that section. If you only stream from Form 4, scope the bundle to the senior grades.