nicocau / apexchart-bundle
Intégration ApexCharts pour Symfony (inspirée de symfony/ux-chartjs) : construisez vos graphiques en PHP, rendus côté client par Stimulus.
Package info
gitlab.com/bundle-symfony/apexchartbundle
Type:symfony-bundle
pkg:composer/nicocau/apexchart-bundle
Requires
- php: >=8.2
- symfony/framework-bundle: ^7.4|^8.0
- symfony/stimulus-bundle: ^2.9|^3.0
- twig/twig: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.95
- phpstan/phpstan: ^2.2
- symfony/phpunit-bridge: ^7.4|^8.0
README
Intégration ApexCharts pour Symfony 7.4+ / PHP 8.2+,
fortement inspirée de symfony/ux-chartjs. Construisez vos graphiques en PHP
pur, passez-les à Twig, et laissez Stimulus gérer le rendu et le cycle de vie
côté client.
$chart = $builder->createChart(ChartType::Line);
$chart->setSeries([['name' => 'Visiteurs', 'data' => [30, 40, 45, 50, 49]]]);
{{ render_apex_chart(chart) }}
Points forts
- 📊 Graphiques en PHP pur — aucun JS à écrire pour l'usage courant
- 🧩
ApexChartBuilderInterfaceinjectable + fonction Twigrender_apex_chart() - ⚡ Stimulus + AssetMapper —
apexchartschargé lazy, uniquement là où il y a un graphique - 🔄 Mise à jour dynamique (LiveComponent / Turbo) via
updateOptions()animé
Installation express
composer require nicocau/apexchart-bundle
# (Flex ajoute le contrôleur + apexcharts à l'importmap ; sinon :)
php bin/console importmap:require apexcharts
📖 Documentation complète
La documentation détaillée vit dans le dossier docs/ et est
publiée en HTML sur GitLab Pages à chaque version.
| Page | Sujet |
|---|---|
| Installation | Composer, controllers.json, importmap |
| Utilisation | Concepts, builder, tous les types de graphiques, options |
| Recettes & avancé | Étendre le contrôleur Stimulus, événements, FrontBundle |
| Licence ApexCharts | ⚠️ Modèle dual-licence lié au CA — à lire avant la prod |
Licence
Ce bundle : MIT. La librairie ApexCharts.js suit un modèle dual-licence lié au chiffre d'affaires (pas MIT) — voir docs/license.md avant toute mise en production.