LumyriaDocs

Générateur de Widgets

Créez des widgets personnalisés pour vos métriques métier avec le constructeur visuel et des requêtes BigQuery custom.

Vue d'ensemble du générateur

Le générateur de widgets Lumyria permet de créer facilement des visualisations personnalisées en connectant directement vos tables BigQuery. Interface drag & drop avec prévisualisation temps réel.

🎯 Fonctionnalités

  • Interface visuelle intuitive
  • Prévisualisation temps réel
  • Requêtes BigQuery dynamiques
  • Partage entre équipes

📊 Types disponibles

  • Graphiques en barres
  • Graphiques en lignes
  • Camemberts et donuts
  • Tableaux de données
  • Métriques numériques (KPIs)

Interface du générateur

Le générateur est accessible via /pages/WidgetBuilder.tsxet propose une interface en 4 étapes principales.

1

Sélection du type de widget

Choisissez parmi 5 types de visualisations : barres, lignes, camembert, tableau ou métrique.

Barres

Lignes

Camembert

Tableau

Métrique

2

Configuration des données

Sélectionnez vos sources BigQuery et configurez les dimensions et métriques.

# Tables BigQuery disponibles
- fact_user_activity (activité utilisateurs)
- fact_content_views (vues de contenu)
- fact_engagement (métriques engagement)
- dim_users (dimensions utilisateurs)
- dim_content (dimensions contenu)
+ 19 autres tables disponibles
3

Filtres dynamiques

Ajoutez des filtres pour affiner vos données et créer des vues contextuelles.

Filtres temporels

Période, date, comparaisons

Filtres utilisateur

Départements, rôles, groupes

Filtres contenu

Types, catégories, sites

4

Prévisualisation et sauvegarde

Visualisez votre widget en temps réel et sauvegardez-le pour l'utiliser dans vos dashboards.

Aperçu temps réel
Widgets réutilisables
Partage entre équipes

Exemples de widgets personnalisés

📊 Top Content par Engagement

-- Requête BigQuery générée
SELECT
c.title,
SUM(e.engagement_score) as score
FROM fact_engagement e
JOIN dim_content c ON e.content_id = c.id
WHERE e.date >= DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY)
GROUP BY c.title
ORDER BY score DESC LIMIT 10

Widget en barres horizontales avec données des 30 derniers jours

👥 Répartition Utilisateurs Actifs

-- Analyse par département
SELECT
u.department,
COUNT(DISTINCT u.user_id) as users
FROM fact_user_activity a
JOIN dim_users u ON a.user_id = u.id
WHERE a.activity_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
GROUP BY u.department

Widget camembert avec répartition par département

📈 Tendance Engagement Mensuel

-- Évolution sur 12 mois
SELECT
FORMAT_DATE('%Y-%m', e.date) as month,
AVG(e.engagement_score) as avg_engagement,
COUNT(DISTINCT e.user_id) as active_users
FROM fact_engagement e
WHERE e.date >= DATE_SUB(CURRENT_DATE(), INTERVAL 12 MONTH)
GROUP BY month
ORDER BY month

Widget en lignes avec double axe (engagement + utilisateurs actifs)

Configuration avancée

Requêtes SQL personnalisées

  • • Éditeur SQL avec coloration syntaxique
  • • Auto-complétion des tables et colonnes
  • • Validation de requêtes en temps réel
  • • Optimisation automatique des performances
  • • Support des fonctions BigQuery avancées
  • • Variables dynamiques pour les filtres

Filtres interactifs

  • • Sélecteurs de dates avec calendrier
  • • Filtres multi-sélection par liste
  • • Recherche textuelle avec autocomplétion
  • • Filtres en cascade dépendants
  • • Valeurs par défaut configurables
  • • Sauvegarde des préférences utilisateur

Performance et optimisation

Bonnes pratiques

  • • Limitez les résultats avec LIMIT pour les aperçus
  • • Utilisez les partitions de date pour optimiser les performances
  • • Évitez les SELECT * sur les grandes tables
  • • Mettez en cache les widgets fréquemment utilisés
  • • Groupez les métriques similaires dans un seul widget

Partage et collaboration

🏢 Bibliothèque d'équipe

  • • Widgets partagés par équipe
  • • Templates réutilisables
  • • Versioning des widgets
  • • Historique des modifications

🌐 Partage public

  • • Export vers autres équipes
  • • Widgets en lecture seule
  • • Liens de partage sécurisés
  • • Embeddings externes

🔒 Permissions

  • • Contrôle d'accès granulaire
  • • Widgets privés/publics
  • • Rôles de création/modification
  • • Audit des utilisations

Intégration dans les dashboards

Une fois créés, vos widgets personnalisés apparaissent automatiquement dans la bibliothèque de widgets et peuvent être ajoutés à n'importe quel dashboard de votre équipe.

Processus d'intégration

1. Widget créé et sauvegardé dans WidgetBuilder
2. Ajout automatique à WidgetRegistry.tsx
3. Disponible dans WidgetLibrary.tsx
4. Drag & drop dans CustomizableDashboard.tsx
5. Configuration responsive dans DashboardGrid.tsx

Guides pratiques