# π¦
FluSentinel Egypt
> AI-powered early warning platform for Avian Influenza in Egypt
## Quick start (5 minutes)
```bash
# 1. Clone and configure
git clone
cd flusentinel
cp .env.local .env.local # already configured for local dev
# 2. Start everything
make up
# 3. In a second terminal β first-time setup
make migrate
make seed
make generate-data
make train
# Or run all at once:
make setup
```
**Open:**
- API docs β
localhost
- Frontend β
localhost
- MinIO console β
localhost (user: `flusentinel`, pass: `flusentinel_dev`)
---
## Project structure
```
flusentinel/
βββ main.py # FastAPI app entry point
βββ core/ # Config, DB, security
β βββ config.py
β βββ database.py
β βββ security.py
β βββ deps.py
βββ models/
β βββ tables.py # All SQLAlchemy ORM models
βββ routers/ # One file per route group
β βββ auth.py
β βββ farms.py
β βββ surveillance.py
β βββ climate.py
β βββ risk.py
β βββ genomic.py
β βββ alerts.py
β βββ governorates.py
β βββ reports.py
β βββ websocket.py
βββ services/ # Business logic
β βββ feature_engineering.py
β βββ ml_predictor.py
β βββ alert_dispatcher.py
β βββ climate_etl.py
β βββ genomic_pipeline.py
β βββ genomic_qc.py
β βββ mutation_scanner.py
β βββ genomic_risk_scorer.py
β βββ variant_comparator.py
β βββ report_generator.py
β βββ genbank_fetcher.py
βββ tasks/
β βββ celery_app.py # Celery tasks + beat schedule
βββ training/
β βββ train_xgboost.py # XGBoost model training
β βββ train_lstm.py # LSTM seasonal model
β βββ export_training_data.py # DB β CSV export
βββ scripts/
β βββ init.sql # PostGIS + TimescaleDB extensions
β βββ seed_govs.py # Seed 27 governorates
β βββ generate_training_data.py # Synthetic training data
βββ tests/
β βββ test_auth.py
β βββ test_risk.py
β βββ test_surveil β¦