Start here: Implement Core before any fee, attendance, or extended module. Core is a bundle (gateway, auth, org, students, files, notifications, portal shells) — not “module 1 only”.

What Core includes

AreaCapabilitiesService
PlatformAPI gateway, JWT, RBAC, org isolationapi-gateway, auth-service
OrganisationSchool, campuses, years, terms, classesorganization-service
PeopleStaff accounts, parent/guardian accounts, student registration & enrollmentauth-service, student-service
FilesPhotos, documents, presigned URLsfile-service
NotificationsSMS/email setup (Africa's Talking), welcome invitesnotification-service
PortalsAdmin shell + family portal (child list, login)React apps

What Core does NOT include

  • Fee invoices, payment claims, receipts (Fees — Phase 2)
  • Document library, homework (Portal add-on)
  • Attendance, academics, health, modules 13–22

Core microservices (Phase 1 deploy)

ServicePortDatabase
api-gateway8080
auth-service8081auth_db
organization-service8082org_db
student-service8083student_db
notification-service8090notification_db
file-service8091file_db

Plus PostgreSQL, RabbitMQ, Redis, MinIO. Add-on services deploy only when sold.

Foundation events

  • StudentEnrolled — student ACTIVE; fee/attendance modules subscribe later
  • GuardianLinked — parent account linked
  • StaffUserCreated
  • AcademicYearOpened
  • StudentTransferred

Implementation checklist

  1. Repo & compose — monorepo, Docker Compose, shared JWT library, CI, feature flags
  2. organization-service — campuses, years, terms, classes; 3-term Uganda seed
  3. auth-service — staff + parent users, roles, campus scope, audit
  4. student-service — registration wizard, guardians, approve → ACTIVE, events
  5. file-service — MinIO upload, presigned GET
  6. notification-service — SMS/email, welcome on StudentEnrolled
  7. api-gateway — routes, JWT filter, CORS
  8. Admin portal MVP — org setup, student registration, staff users
  9. Family portal MVP — parent login, linked children only
  10. Migration & UAT — spreadsheet import, acceptance tests

Acceptance criteria (Core go-live)

  • Admin creates campus, year, classes
  • Reception registers student with guardians, photo, documents
  • Admin approves → parent receives SMS with portal link
  • Parent logs in and sees all linked children
  • Director sees enrollment count per campus
  • Teacher cannot access other campus without scope

Timeline (indicative — 500 students, 1 campus)

WeeksDeliverable
1–2Platform skeleton, gateway, auth
3–4Organization service + admin org UI
5–7Student service + registration wizard
8–9Files, notifications, guardian invite
10Family portal MVP, UAT, Core go-live

Phase 2 (Fees) starts week 11. See module catalog and extended modules roadmap.