# Factura Africa
Devis et factures professionnels en XOF pour les TPE d'Afrique de l'Ouest :
export PDF avec QR Code et coordonnées Mobile Money, partage WhatsApp,
journal des actions. Fonctionne hors ligne, sans serveur.
## Démarrage
```bash
npm install
npm run dev # développement,
localhost
```
## Commandes
| Commande | Effet |
|---|---|
| `npm run dev` | Serveur de développement |
| `npm run build` | Build de production dans `dist/` |
| `npm run preview` | Sert le build de production (port 4173) |
| `npm test` | 26 tests du noyau métier |
| `node scripts/verify.mjs` | 35 vérifications navigateur des exigences du PRD |
| `node scripts/inspect-pdf.mjs ` | Contrôle du contenu réel d'un PDF généré |
| `node scripts/verify-theme.mjs` | Vérifie qu'un changement de token repeint bien les PDF |
`verify.mjs` a besoin du build servi par `npm run preview` :
```bash
npm run build && npm run preview &
BASE_URL=
127.0.0.1 node scripts/verify.mjs
```
Les captures et le PDF produits pendant la vérification sont écrits dans `artifacts/`.
## Fonctionnalités
- **Tableau de bord** — statistiques calculées en direct, aperçu des devis et factures, activités récentes, actions rapides.
- **Clients** — création, modification, suppression protégée, recherche insensible aux accents, historique par client.
- **Devis** — création, modification, duplication, suppression, conversion en facture avec lien réciproque.
- **Factures** — création, modification, duplication, 4 statuts (brouillon, envoyée, payée, en attente).
- **PDF** — logo ou monogramme, informations émetteur et client, tableau des prestations, totaux, QR Code, comptes Mobile Money, pied de page numéroté.
- **QR Code** — généré automatiquement, contenant numéro, montant, échéance et coordonnées de paiement.
- **Mobile Money** — Orange Money, MTN Mobile Money, Moov Money, Airtel Money ; plusieurs comptes, un seul par défaut.
- **Partage** — téléchargement du PDF, envoi du fichier lui-même via …