jeffersongoncalves / laravel-umami
This Laravel package seamlessly integrates Umami analytics into your Blade templates. Easily track website visits and user engagement directly within your Laravel application, providing valuable insights into your website's performance. This package simplifies the integration process, saving you tim
Installs: 384
Dependents: 1
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 0
pkg:composer/jeffersongoncalves/laravel-umami
Requires
- php: ^8.2|^8.3
- laravel/framework: ^11.0|^12.0|^13.0
- spatie/laravel-package-tools: ^1.14.0
- spatie/laravel-settings: ^3.3
Requires (Dev)
- larastan/larastan: ^3.0
- orchestra/testbench: ^9.0|^10.0|^11.0
- pestphp/pest: ^3.7.4
- pestphp/pest-plugin-laravel: ^3.0
README
Laravel Umami
This Laravel package seamlessly integrates Umami analytics into your Blade templates. Easily track website visits and user engagement directly within your Laravel application, providing valuable insights into your website's performance. This package simplifies the integration process, saving you time and effort. With minimal configuration, you can leverage Umami's powerful analytics features to gain a clearer understanding of your audience and website usage.
Requirements
- PHP 8.2+
- Laravel 11+
- spatie/laravel-settings configured (the
settingstable must exist)
Installation
Install the package via composer:
composer require jeffersongoncalves/laravel-umami
If you haven't already, publish the spatie/laravel-settings migration to create the settings table:
php artisan vendor:publish --provider="Spatie\LaravelSettings\LaravelSettingsServiceProvider" --tag="migrations"
Then publish and run the Umami settings migration:
php artisan vendor:publish --tag=umami-settings-migrations php artisan migrate
Usage
Add the Umami script to your Blade layout (typically in the <head> section):
@include('umami::script')
Configuring Settings
Settings are stored in the database and can be managed via code:
use JeffersonGoncalves\Umami\Settings\UmamiSettings; $settings = app(UmamiSettings::class); $settings->website_id = 'your-website-id'; $settings->host_analytics = 'https://your-umami-instance.com'; $settings->save();
Available Settings
| Property | Type | Default | Description |
|---|---|---|---|
website_id |
?string |
null |
Your Umami website ID (required for tracking) |
host_analytics |
string |
https://cloud.umami.is |
URL of your Umami instance |
host_url |
?string |
null |
Override data destination URL |
auto_track |
bool |
true |
Automatically track pageviews and events |
domains |
?string |
null |
Comma-delimited list of allowed domains |
tag |
?string |
null |
Tag to group events in the dashboard |
exclude_search |
bool |
false |
Exclude search parameters from URL |
exclude_hash |
bool |
false |
Exclude hash value from URL |
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.
