- Can I use this package in a Laravel project without Filament?
- No, this package is specifically designed for Filament admin panels (v3 or v4). If you need a standalone solution, consider alternatives like D3.js or GoJS with custom Laravel integration. The package leverages Filament’s widget system for seamless embedding.
- What Laravel versions does this package support?
- The package supports Laravel 10.x, 11.x, and 12.x. Ensure your project is on one of these versions before installation. Compatibility with older Laravel releases is not guaranteed.
- How do I connect the chart to my Eloquent models (e.g., Users or Teams)?
- Use the fluent API to define your hierarchy by chaining methods like `withModel(User::class)` and specifying parent-child relationships via `parentId()`. The package assumes a `parent_id` foreign key by default, but you can customize this in the configuration.
- Does this package work with large organizational structures (e.g., 1,000+ employees)?
- For large charts, performance may degrade due to Highcharts’ client-side rendering. Mitigate this by implementing server-side pagination or lazy-loading. Test with your expected dataset size before production deployment.
- What are the licensing costs for Highcharts in production?
- Highcharts offers a free tier for non-commercial use, but commercial applications require a paid license (~$699/year). Review Highcharts’ [licensing terms](https://shop.highcharts.com/buy) to ensure compliance, especially for B2B or customer-facing tools.
- Can I customize the appearance of nodes (e.g., colors, shapes, tooltips)?
- Yes, the package provides extensive customization options via the fluent API, including colors, node shapes, and dynamic tooltips. For advanced styling, you may need to override Highcharts’ default configurations or extend the package’s JavaScript.
- How do I handle matrix organizations or non-standard hierarchies (e.g., dotted-line reports)?
- The package assumes a traditional parent-child hierarchy. For matrix orgs or custom relationships, you’ll need to pre-process your data into a compatible structure or extend the package’s data provider. Consider using a graph traversal library like `laravel-graph` to reshape complex relationships.
- Is there a way to add real-time updates (e.g., live employee changes) to the chart?
- The package supports static data by default. For real-time updates, you’ll need to implement a frontend event system (e.g., Laravel Echo + WebSockets) to push changes to the chart via Highcharts’ `addSeries` or `update` methods. Test performance with frequent updates.
- What if I need to export the chart to PDF or PNG?
- Highcharts includes built-in export functionality, but you’ll need to configure it via the package’s API. Enable exports by setting `enableExport: true` and ensure your Filament panel has the necessary permissions to trigger the export dialog.
- Are there alternatives to this package if Filament or Highcharts aren’t suitable?
- For non-Filament projects, consider D3.js (more customizable but complex) or GoJS (commercial, feature-rich). For Laravel-specific solutions, explore packages like `spatie/laravel-organization` paired with a custom frontend library. Evaluate trade-offs in development effort vs. features.