How edubridge-team/edubridge works
EduBridge is a multi-role learning and support platform for children with special educational needs, comprising a React web client, Laravel API, PostgreSQL data store, and a Flutter mobile app. The main workflow is a parent or educator accessing a child’s learning, recording progress, and coordinating support through role-specific portals. The README also documents identity verification, curriculum review, communication, homework, reports, accessibility, and emergency features. Flutter source and most API controllers were not sampled, so those subsystems are represented at their documented directory level; unverified client-to-API wiring is dashed.
Main entry points: AppRoutes.jsx Web application · Controllers Domain API · RolePortalLayout.jsx Role portal shell · ChildLessonsPage.jsx Child learning
Components 21
Web experience
- Web application
edubridge-web/src/AppRoutes.jsx - Role portal shell
edubridge-web/src/layouts/RolePortalLayout.jsx - Role navigation
edubridge-web/src/layouts/rolePortalNavigation.jsx - Role routes
edubridge-web/src/roleRoutes.js - Flutter mobile app
edubridge-app
Learning and support
- Child learning
edubridge-web/src/pages/Children/ChildLessonsPage.jsx - Teacher dashboard
edubridge-web/src/pages/Dashboards/Teacher/TeacherDashboard.jsx - Specialist workflow
edubridge-web/src/pages/Support/SpecialistWorkflowPage.jsx - Curriculum review
edubridge-web/src/pages/Dashboards/MinistryPage.jsx - Conversations
edubridge-web/src/pages/Communication/ConversationsPage.jsx - Account and identity
edubridge-web/src/pages/Account/ProfileSections.jsx
API and services
- Web API clients
edubridge-web/src/api/platform.js - Support API clients
edubridge-web/src/api/support.js - Authentication and access
edubridge-api-laravel/app/Http/Middleware - Domain API
edubridge-api-laravel/app/Http/Controllers - Child access rules
edubridge-api-laravel/app/Support/ChildAccess.php - Notifications
edubridge-api-laravel/app/Support/Notify.php - R2 file storage
edubridge-api-laravel/app/Support/R2Storage.php
Data and storage
- PostgreSQL
- Cloudflare R2
Other components
- Learners and staff
Connections 21
- Learners and staff → Web application: uses
edubridge-web/src/AppRoutes.jsx - Web application → Role portal shell: renders role shell
edubridge-web/src/AppRoutes.jsx - Web application → Role routes: checks role routes
edubridge-web/src/AppRoutes.jsx - Role portal shell → Role navigation: uses navigation
edubridge-web/src/layouts/RolePortalLayout.jsx - Web application → Child learning: routes to
edubridge-web/src/AppRoutes.jsx - Web application → Teacher dashboard: routes to
edubridge-web/src/AppRoutes.jsx - Web application → Specialist workflow: routes to
edubridge-web/src/AppRoutes.jsx - Web application → Curriculum review: routes to
edubridge-web/src/AppRoutes.jsx - Web application → Conversations: routes to
edubridge-web/src/AppRoutes.jsx - Web application → Account and identity: routes to
edubridge-web/src/AppRoutes.jsx - Child learning → Web API clients: requests learning data
- Specialist workflow → Support API clients: requests support data
- Flutter mobile app → Domain API: calls API
- Web API clients → Domain API: calls API
- Support API clients → Domain API: calls API
- Domain API → PostgreSQL: reads and writes
- Domain API → Child access rules: checks access
edubridge-api-laravel/app/Http/Controllers/EngagementController.php - Domain API → Notifications: sends alerts
edubridge-api-laravel/app/Http/Controllers/EmergencyAlertController.php - Domain API → R2 file storage: stores uploads
- R2 file storage → Cloudflare R2: transfers objects
- Authentication and access → Domain API: protects requests