Download the PHP package ritechoice23/taggable without Composer
On this page you can find all versions of the php package ritechoice23/taggable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ritechoice23/taggable
More information about ritechoice23/taggable
Files in ritechoice23/taggable
Package taggable
Short Description The most intuitive and powerful Laravel tagging package that just works. Add intelligent tag normalization, trending analytics, powerful queries, and bulletproof edge case handling with zero configuration required.
License MIT
Homepage https://github.com/ritechoice23/laravel-taggable
Informations about the package taggable
Laravel Taggable - The Developer's Choice
The most intuitive and powerful Laravel tagging package that just works. Add $post->tag('laravel') to any model and get intelligent tag normalization, trending analytics, powerful queries, and bulletproof edge case handling - all with zero configuration required.
Why this package
Popular Alternatives
What Makes It Unique
✅ Trending Score Algorithm - Configurable trending calculation (volume, recency, velocity, freshness weights)
✅ Tag Analytics - Built-in getActivitySummary(), growth rate tracking
✅ Momentum Bonuses - Reward tags with consistent daily/weekly activity
✅ Meta Attributes - Color, description, icon stored as JSON on tags
✅ High Growth Detection - whereHighGrowth() scope for discovering rising topics
✅ Artisan Command - php artisan tags:calculate-trending
Installation
You can install the package via composer:
You can publish and run the migrations with:
You can publish the config file with:
The config file allows you to customize the trending score calculation:
Optionally, you can publish the views using
Usage
Add the Trait to Your Model
Tagging Models
The package provides a clean, intuitive API for managing tags using natural method names:
Checking Tags
Querying Tagged Models
Available Query Scopes
For Tagged Models (using HasTags trait):
withTag($tag)- Get models with a specific tag (by name, slug, ID, or Tag model)withAnyTag($tags)- Get models with any of the given tagswithAllTags($tags)- Get models with all of the given tags
For Tag Model:
wherePopular($limit)- Get most popular tags ordered by usage countwhereTrending($limit)- Get trending tags ordered by trending scorewhereName($name)- Search tags by name (supports partial match)whereSlug($slug)- Find tags by slug (exact match)whereRecentlyActive($days)- Get tags active within the specified number of dayswhereHighGrowth($days)- Get tags with high growth in the specified period
Working with Tags
Configurable Trending Scores
The trending score calculation is fully configurable. You can adjust weights, time periods, and bonuses to match your application's needs:
Artisan Commands
Calculate trending scores for all tags:
Testing
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
- Daramola Babatunde Ebenezer
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of taggable with dependencies
spatie/laravel-package-tools Version ^1.16
illuminate/contracts Version ^11.0||^12.0