Mobile-first South African public school management app with Supabase, SA-SAMS file integration, offline sync, and communication centre.
# Ysterberg School Pocket Manager
Mobile-first South African public school management app for Android and web. The app is designed as a modern phone-friendly extension of SA-SAMS, not a replacement. SA-SAMS integration is file-based through CSV, Excel `.xlsx`, and structured import/export workflows.
## Live Builds
- Web:
management-beta-tawny.verce…
- Corrected Android APK:
expo.dev
- Expo build page:
expo.dev
## Current Build
This build includes:
- Expo Router app with TypeScript, NativeWind and mobile-first screens.
- Login, register and forgot-password screens.
- Protected bottom-tab navigation: Dashboard, Learners, Attendance, Assessments, SA-SAMS and More.
- Role-aware dashboard shell.
- Learner, attendance and CAPS assessment starter screens with realistic sample data.
- SA-SAMS Integration Centre with import/export actions, mapping preview, sync state, validation warnings, backup and history sections.
- Communication Centre for SMS, WhatsApp-ready text, push, email, bulk targeting, templates, delivery reports, failed messages and POPIA consent lists.
- Supabase schema with RLS, audit logging, import/export batches, field mappings and sync jobs.
- SQLite local cache and offline sync queue utilities.
- CSV/XLSX SA-SAMS mapping, validation, import preparation and export helpers.
- CAPS report PDF helper with escaped HTML rendering.
## Folder Structure
```text
.
|-- app/
| |-- (auth)/
| | |-- forgot-password.tsx
| | |-- login.tsx
| | `-- register.tsx
| |-- (tabs)/
| | |-- _layout.tsx
| | |-- assessments.tsx
| | |-- attendance.tsx
| | |-- communication.tsx
| | |-- dashboard.tsx
| | |-- learners.tsx
| | |-- more.tsx
| | `-- sams.tsx
| |-- _layout.tsx
| `-- index.tsx
|-- docs/
|-- src/
| |-- components/
| |-- config/
| |-- cons …