Skip to content

BUILD

A full school platform with five roles, protected student data, literacy screening and automated permission tests — deployed and in use.

Client
Jaafar Al-Tayyar Basic School for Boys
Sector
Education — basic school, Amman
Status
Delivered — in use

Before · The problem

A school moving from paper and scattered chat groups to one digital environment — grades, attendance, schedule, communication, and support for students who need help with reading and writing — under one non-negotiable rule: minors’ data is protected and every user sees only what is theirs, with a path to hand the platform to the Ministry of Education one day.

The build · What was built

  • 01

    Five roles, precise permissions

    System owner · school admin · teacher · counsellor · student — each scope derived from real assignments (subject/grade/section/year).

  • 02

    Administration

    Students, teachers, users, schedule, attendance, promotion, penalties, alerts, reports, audit log.

  • 03

    Academics

    Grades (hidden from students until published), curricula and textbooks, library, skills, achievements.

  • 04

    Literacy screening

    Individual and bulk assessment, support plans, a sensitive classification visible only to authorised teachers.

  • 05

    Counselling

    Appointments and notes under a dedicated permission.

  • 06

    AI layer with written governance

    Server-side only, runs with the user’s own permissions, never receives un-anonymised student data — “a servant of the educational process, not a chat page”.

Anonymised screenshots are being added.

How we worked · How it was built

  1. Documentation before code: vision, requirements, roles and permissions, database schema, user flows, security and privacy, AI governance, MVP roadmap — all approved in Arabic.
  2. Tests as the judge: acceptance criteria per feature and an automated permission matrix (role × resource × action) that runs on every change — Vitest for logic, Playwright for flows.
  3. Security by design: row-level security in the database, a restricted application role separate from the admin role, files stored in the database, unauthorised access attempts logged.
  4. Near-zero running cost on free tiers (Vercel + Supabase) with a clear upgrade path.

Today · Results

Delivered — in useJaafar Al-Tayyar Basic School for Boys

Numbers are published once the client approves them — we never invent figures.

What it means · What it means for a similar client

Proof that we build custom web systems with multiple user types and sensitive data — schools, clinics, associations, companies with departments. The same method (document → permissions → tests → deploy) applies to any internal system.