← Retour à la marketplace
📈

Dashboard Analytics

Tableau de bord avec KPIs, graphiques et rapports configurables.

AnalyticsMoyen~6 joursv1.1.0

Module de dashboard analytics avec KPIs temps réel, graphiques (bar, line, pie), rapports personnalisables, comparaison de périodes, export PDF/Excel et accès par rôle.

dashboardanalyticschartskpireporting

Dépendances requises :

📋 Schéma Prisma

// === Module Dashboard Analytics ===

model SavedReport {
  id        String   @id @default(cuid())
  name      String
  query     Json     // Paramètres du rapport (période, métriques, filtres)
  ownerId   String
  isShared  Boolean  @default(false)
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt

  @@map("saved_reports")
}

🔌 Endpoints API

## API Dashboard Analytics

GET /api/analytics/kpis?period=    # KPIs principaux (CA, commandes, etc.)
GET /api/analytics/revenue?from=&to= # Données CA par période
GET /api/analytics/top-contacts    # Top clients/contacts
GET /api/analytics/funnel          # Funnel de conversion (si CRM activé)
GET /api/analytics/export?format=  # Export PDF ou Excel

GET  /api/reports                  # Rapports sauvegardés
POST /api/reports                  # Sauvegarder un rapport
GET  /api/reports/:id              # Exécuter un rapport

🛠️ Guide d'implémentation

## Implémentation Dashboard Analytics

### Dépendances
```bash
npm install recharts  # Graphiques React (MIT)
```

### Étape 1 — Requêtes agrégées
Créer src/lib/analytics/queries.ts avec des fonctions Prisma utilisant groupBy, _sum, _count.
Ajouter des index sur les champs de date pour les performances.

### Étape 2 — Cache des KPIs
Mettre en cache les résultats côté serveur (Next.js unstable_cache ou Redis si disponible).
TTL : 5 minutes pour les données temps réel.

### Étape 3 — Composants graphiques
Créer src/components/analytics/ avec des wrappers Recharts typés.

### Étape 4 — Export
Générer des PDF avec @react-pdf/renderer ou des Excel avec xlsx.

Prêt à installer ce module ?

Ajoutez-le à un projet existant depuis la page modules du projet.

Voir les projets →