Skip to content

Lead Analytics Dashboard

Release Build status Commit activity License

Bienvenue dans la documentation du Lead Analytics Dashboard, une application complète d'analyse de leads avec un dashboard moderne.

🎯 Vue d'ensemble

Lead Analytics Dashboard est une application full-stack permettant de suivre et analyser les événements commerciaux :

  • 📞 Prises de contact
  • 📅 Appels bookés et proposés
  • 🔄 Relances
  • 💬 Réponses prospects

🏗️ Architecture

Backend

  • FastAPI : Framework web moderne et performant
  • DuckDB : Moteur SQL analytique pour les agrégations
  • Delta Lake : Format de stockage de données versionné et optimisé
  • Google Cloud Storage : Stockage cloud pour Delta Lake
  • Logfire : Observabilité et monitoring en temps réel
  • Python 3.13 : Dernière version stable de Python
  • uv : Gestionnaire de dépendances ultra-rapide

Frontend

  • Next.js 16 : Framework React avec App Router
  • React 19 : Dernière version de React
  • Tailwind CSS : Framework CSS utility-first
  • Recharts : Bibliothèque de graphiques pour React
  • shadcn/ui : Composants UI modernes et accessibles

✨ Fonctionnalités principales

Visualisation des données

  • 📊 Graphiques interactifs des événements par semaine et par mois
  • 📈 Tableaux de suivi des objectifs
  • 🔄 Analyse des ratios de conversion
  • 📱 Interface responsive et moderne

Analyse temporelle

  • Agrégations hebdomadaires avec DATE_TRUNC
  • Agrégations mensuelles
  • Unpivot des colonnes de dates pour analyse multi-événements
  • Requêtes SQL optimisées avec DuckDB

Architecture technique

  • API REST avec documentation OpenAPI automatique
  • Validation des données avec Pydantic
  • Logging structuré avec Loguru
  • Observabilité complète avec Logfire
  • Gestion sécurisée des secrets (pas d'ARG Docker)
  • Build multi-stage optimisé
  • Health checks configurés
  • Hot-reload en développement

Observabilité avec Logfire

  • 🔥 Traces distribuées : Suivi complet des requêtes API
  • 📊 Logs structurés : Centralisation avec emojis pour la lisibilité
  • Métriques : Performance et santé de l'application en temps réel
  • 🐛 Debugging facilité : Identification rapide des problèmes
  • 📈 Dashboards automatiques : Visualisations sans configuration

🚀 Démarrage rapide

Deux options disponibles

Vous pouvez lancer l'application en développement local ou via Docker.

Option 1 : Docker (Recommandé)

# Créer le fichier .env
cat > .env << EOF
NOTION_TOKEN=votre_token
DATABASE_ID=votre_database_id
EOF

# Build et démarrage
make docker-deploy

Option 2 : Développement local

# Backend
make install
uv run uvicorn backend.app:app --reload

# Frontend (nouveau terminal)
cd frontend && pnpm install && pnpm dev

📚 Documentation

🤝 Contribution

Les contributions sont les bienvenues ! Consultez le guide de contribution pour plus d'informations.

📝 License

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.