# đ Algerian School Support Platform
A **production-ready, multi-service** platform for an Algerian school-support
(tutoring) business targeting the **BAC** (Baccalauréat) and **BEM** (Brevet)
national exams. It connects a **Meta (Facebook) Messenger bot**, a **CrewAI +
Google Gemini** conversational agent that speaks **Algerian Darija & French**,
and a **Laravel school-management dashboard** â all wired together with a
shared Docker stack and Redis.
---
## âš Highlights
- đ€ **AI Agent (CrewAI + Gemini)** that replies in **Algerian Darija / French**
with a warm, professional tone, and extracts structured pre-registration data.
- đ **Meta Messenger Gateway (FastAPI)** that **verifies `X-Hub-Signature-256`**
(HMAC-SHA256) and responds **asynchronously** to avoid webhook timeouts.
- đ« **Laravel School Dashboard** (ready-made School Management System).
- đł **Docker Compose** stack wiring Gateway + AI Engine + Dashboard + Redis + MySQL.
- đ§± **Deterministic JSON output** (`reply_text` + `extracted_info`) from the AI â
stable contract for downstream systems.
---
## đ Architecture
```
âââââââââââââââââââââââââââââââ ââââââââââââââââââââââââââââââââ
â Meta Messenger (FB) â â CrewAI AI Engine â
â âââââââââââââââââââââââââ â HTTP â ââââââââââââââââââââââââââ â
â â Gateway (FastAPI) âââŒââââââââŒâââșâ /v1/reply â â
â â · X-Hub-Signature â â â ââââââââââââââââââââââââââ â
â â · Async background â â â AlgerianSupportCrew (crew) â
â ââââââââââââŹâââââââââââââ â â Agent (Gemini, Darija) â
â â reply â ââââââââââââââââââââââââââââââââ
â ⌠â
â âââââââââââââââââââââââââ â
â â Redis (cache/queue) â â
â âââââââââââââââââââââââââ â
âââââââââââââââââââââââââââââââ
â
âŒ
âââââââââââââââââââââââââ
â Dashboard (Laravel) â â school/student/result management
âââââââââââââââââââââââââ
```
| Service | Tech | Port | Pur âŠ