- How do I install the filament-fathom plugin?
- Install it with Composer using composer require jeffersongoncalves/filament-fathom, then register the plugin in your Filament panel provider. The package depends on filament-analytics-core 3.1 or newer, so Composer resolves that dependency for you. Once registered, the Fathom settings page and dashboard widget become available inside your admin panel.
- Which Laravel and Filament versions does this package support?
- The plugin targets Laravel applications built on Filament panels and requires filament-analytics-core 3.1 or higher. Check the composer.json constraints in the repository for the exact Laravel and Filament version ranges before installing. If your project is pinned to an older core package, upgrade it first so the plugin's methods are available.
- How do I add the Fathom settings page to an existing navigation group?
- Use the navigationGroup() method when registering the plugin, for example Plugin::make()->navigationGroup('Settings') in your panel provider. The method accepts a string or a Closure and places the settings page inside the matching navigation group instead of creating its own. If you never call it, the page falls back to the package's translated default group.
- Can navigationGroup() take a Closure?
- Yes, navigationGroup() accepts string|Closure, so you can resolve the group name at runtime. This is useful when the group label differs per panel, tenant, or user permission set. Keep the closure lightweight because it is evaluated while Filament builds the navigation.
- Does the plugin work with multiple Filament panels?
- You can register the plugin in more than one panel provider, and pairing it with a navigationGroup() Closure lets each panel show the settings page under a different group. That keeps admin and secondary panels consistent with their own navigation structure. Just make sure every panel where you register it has the core package available.
- What happens if the navigation group I specify does not exist?
- Filament navigation groups are effectively labels, so an unmatched name typically results in a new group heading rather than an error. The page may simply appear in an unexpected section of the sidebar. Double-check the exact string, including capitalization, against the groups already used in your panel.
- Is upgrading to 3.4.0 backward compatible?
- Yes. If you do not call navigationGroup(), the settings page continues to use the translated default group, so existing panels behave as before. The main risk is version coupling with filament-analytics-core, which must be at 3.1 or newer before you upgrade this plugin. Upgrade the core package first, then the plugin, and watch core releases for breaking changes.
- Will the plugin or its dashboard widget slow down my admin panel?
- The plugin itself adds a settings page and a dashboard widget, and resolving a navigation group closure is a lightweight string lookup. Any external calls for traffic stats go through the core analytics package, so caching and rate limiting are governed there. If widget load time matters, cache or defer the stats where your core package allows it.
- How should I test the Fathom integration before going live?
- Point the plugin at a non-production Fathom site ID in a staging environment and confirm the settings page saves and reloads correctly. Verify the dashboard widget renders the expected stats, then add a test case that registers the plugin with a navigationGroup() Closure to confirm the page lands in the right group. Repeat for each panel where you enable it.
- What are the alternatives to this Filament Fathom plugin?
- You can paste Fathom's tracking snippet into your layout manually and skip the settings UI entirely, or use another Filament analytics package if you need multiple providers. This package's value is the admin settings page plus a dashboard widget for traffic and key stats. If you already use filament-analytics-core elsewhere, adding this plugin keeps everything in one ecosystem.