- How do I install and set up epessine/axis in a Laravel 11 project?
- Run `composer require epessine/axis` to install. Add the required JavaScript libraries (Chart.js, ApexCharts, or Highcharts) to your `resources/js/app.js` via CDN or npm. No additional configuration is needed for basic usage—just start building charts with PHP.
- Does epessine/axis work with Livewire for real-time chart updates?
- Yes, Axis is designed for Livewire. Use the `#[Axis]` attribute on Livewire components to enable real-time chart updates without manual JavaScript event binding. The package abstracts the complexity, making dynamic charts seamless.
- Can I use epessine/axis with existing Chart.js or ApexCharts implementations?
- Absolutely. Axis supports Chart.js, ApexCharts, and Highcharts out-of-the-box. If you’re already using one of these libraries, you can migrate incrementally by replacing JavaScript-heavy chart logic with Axis’s PHP-based API.
- What Laravel versions does epessine/axis support?
- Axis supports Laravel 10.x, 11.x, 12.x, and 13.x. It also works with Livewire 3.x and 4.x. Ensure your project meets these requirements before installation to avoid compatibility issues.
- Is epessine/axis suitable for production use, or is it better for prototyping?
- Axis is in beta, so it carries some risk for production-critical applications. It’s ideal for prototyping, admin dashboards, or projects where rapid development outweighs stability concerns. Monitor updates closely if deploying to production.
- How does epessine/axis handle large datasets (e.g., 10,000+ data points)?
- Axis may struggle with very large datasets due to server-side rendering. For charts with >5,000 data points, consider pre-processing data in PHP or using client-side libraries directly. Test performance under load before full deployment.
- Can I customize tooltips, plugins, or advanced interactivity in epessine/axis?
- Basic chart rendering is handled entirely in PHP, but advanced JavaScript interactivity (e.g., custom tooltips, plugins) may require manual overrides. For complex needs, you might need to fall back to writing custom JavaScript alongside Axis.
- What are the alternatives to epessine/axis for Laravel charting?
- Alternatives include Laravel-specific packages like `torann/laravel-google-charts` (Google Charts), `darkaonline/l5-swagger` (for API-driven charts), or frontend frameworks like Chart.js/Vue/React for full control. Axis stands out for its PHP-centric, Livewire-first approach.
- Does epessine/axis work with Inertia.js or traditional Blade templates?
- Yes, Axis works with both Blade and Inertia.js. For Blade, render charts directly in views with `{{ $chart }}`. Inertia.js projects can pass chart configurations via PHP and render them in Vue/React components with minimal effort.
- How do I test epessine/axis in a CI/CD pipeline or staging environment?
- Test Axis by creating a simple chart in a feature branch, then verify rendering in Blade/Livewire. Use Laravel’s testing tools to mock data and validate chart output. Since Axis relies on JavaScript libraries, ensure your test environment includes the required CDN or npm dependencies.