Mono-repo de traitement du tunisien (الدارجة التونسية) : bibliothèque socle, corpus, applications
# darija-lab
**Mono-repo de traitement du tunisien (الدارجة التونسية).**
Bibliothèques réutilisables, corpus, et applications qui les consomment.
```
packages/darija-core/ socle : normalisation, Arabizi, alternance
codique, marqueurs, classification de dialecte
apps/darija-bench/ banc d'évaluation : un LLM répond-il vraiment
en tunisien, ou glisse-t-il vers la fusha ?
apps/darija-board/ leaderboard web des campagnes du banc
data/tunisian-poetry-corpus/ 2 028 textes de poésie populaire, 396 681 mots
docs/HANDOVER.md historique détaillé et mesures
docs/ROADMAP.md le choix de la première application
CLAUDE.md contexte projet
```
---
## Démarrer
```bash
cd packages/darija-core
python3.12 -m venv .venv && .venv/bin/pip install -e ".[dev,data]"
.venv/bin/python -m pytest -q # 128 tests
.venv/bin/ruff check src tests
```
Puis, en ligne de commande :
```bash
echo "chnowa a7welek" | .venv/bin/darija translit
echo "ken 3andek le temps" | .venv/bin/darija segment
.venv/bin/darija data budget # coût et licences, avant de télécharger
```
---
## Ce que fait `darija-core`
Cinq briques indépendantes, **zéro dépendance d'exécution** :
| module | rôle |
|---|---|
| `normalize` | normalisation orthographique **qui préserve le dialecte** |
| `arabizi` | translittération Arabizi ↔ arabe, et détection |
| `codeswitch` | segmentation arabe / français / Arabizi |
| `markers` | 20 marqueurs morphologiques, pour **inspecter** |
| `dialect` | classifieur contrastif entraînable, pour **décider** |
| `data` | récupération des corpus, assemblage, entraînement, validation |
La différence avec les chaînes arabes usuelles tient en une phrase : elles
normalisent vers l'arabe standard, ce qui détruit le dialecte. Ici `برشا`
`علاش` `قداش` `اللي` traversent intacts, et les lettres maghrébines `ڨ ڥ پ چ`
survivent — sans quoi `ڨلب` deviendrait `لب`.
---
## L'essentiel à savoir
**Le class …