Technical Architecture
Built on proven, open-source technologies that ensure scalability, maintainability, and enable government ownership without vendor lock-in.
System Architecture
┌─────────────────────────────────────────────────────────────────────────┐
│ CLIENT LAYER │
├─────────────────────────────────────────────────────────────────────────┤
│ Android App │ iOS App │ Web Browser │
│ (Offline-first) │ (Offline-first) │ (React SPA) │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ LOAD BALANCER / CDN │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ SPRING BOOT APPLICATION │
├─────────────────────────────────────────────────────────────────────────┤
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Web Layer │ │ Security │ │ Session │ │
│ │ (WebFlux) │ │ (Spring) │ │ Management │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Operations │ │ Services │ │ Schedulers │ │
│ │ (Routes) │ │ (Business) │ │ (Async) │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ JPA/Hibernate│ │ Query DSL │ │ Flyway │ │
│ │ Entities │ │ (Custom) │ │ Migrations │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ DATA & STORAGE LAYER │
├─────────────────────────────────────────────────────────────────────────┤
│ PostgreSQL │ AWS S3 │ External APIs │
│ (Cloud SQL) │ (Assets/Files) │ (SMS, Kobo, etc) │
└─────────────────────────────────────────────────────────────────────────┘
Technology Stack
Backend
Kotlin1.8.21
Modern, type-safe JVM language
Spring Boot2.5.5
Enterprise Java framework
PostgreSQL14+
Robust relational database
FlywayLatest
Database migrations
HikariCPLatest
High-performance connection pooling
Frontend
React18
Component-based UI library
Tailwind CSS3.x
Utility-first CSS framework
kotlinx-htmlLatest
Type-safe HTML DSL
Mobile
AndroidKotlin + Jetpack
Native Android development
iOSSwift
Native iOS development
Infrastructure
AWS Cape Townaf-south-1
South African hosting
Google Cloud SQLManaged
PostgreSQL hosting
AWS S3Standard
File storage
DockerLatest
Containerization
Security & Compliance
- Data encrypted at rest and in transit
- POPIA compliant data handling
- Role-based access control
- Audit logging for all operations
- Regular security updates
- South Africa-based hosting
Open Source Model
The platform is designed for government co-ownership with no licence fees:
- Full source code access provided
- Comprehensive technical documentation
- Government can independently operate, modify, and extend
- No vendor lock-in
- Third-party maintenance possible
Core Data Model
Organisation (Multi-tenant root)
├── Manager (User accounts)
└── Country
├── Region
│ ├── District
│ │ ├── School
│ │ │ ├── Teacher
│ │ │ └── SchoolVisit
│ │ │ └── TeacherVisit
│ │ │ └── PupilAssessment
│ │ └── DistrictPolygon
│ └── Project
│ ├── ProjectForm
│ ├── ProjectStaff
│ ├── Training
│ └── ProjectEvaluationMetric
├── CountryTerm
├── Monitor (Field staff)
└── AssessmentDefinition