Download the PHP package eg-mohamed/notable without Composer
On this page you can find all versions of the php package eg-mohamed/notable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download eg-mohamed/notable
More information about eg-mohamed/notable
Files in eg-mohamed/notable
Package notable
Short Description This is my package notable
License MIT
Homepage https://github.com/eg-mohamed/notable
Informations about the package notable
📝 Notable - Laravel Notes Package
Notable is a powerful Laravel package that enables you to add notes to any Eloquent model through polymorphic relationships. Perfect for adding internal comments, audit logs, user feedback, or any textual annotations to your models.
✨ Features
- 🔗 Polymorphic Relationships - Attach notes to any Eloquent model
- 👤 Creator Tracking - Track who created each note (also polymorphic!)
- ⏰ Timestamps - Automatic created_at and updated_at tracking
- 🔍 Query Scopes - Powerful query methods for filtering notes
- 🎯 Configurable - Customize table names through config
- 🚀 Easy Integration - Simple trait-based implementation
- 📦 Laravel 10+ Ready - Built for modern Laravel applications
🚀 Installation
Install the package via Composer:
Publish and run the migrations:
Optionally, publish the config file:
🎯 Quick Start
1. Add the Trait to Your Model
2. Start Adding Notes
📚 Complete Usage Guide
Adding Notes
Retrieving Notes
Managing Notes
Query Scopes
The Notable
model includes powerful query scopes:
🗂️ Database Schema
The package creates a notables
table with the following structure:
Column | Type | Description |
---|---|---|
id |
bigint | Primary key |
note |
text | The note content |
notable_type |
varchar | Polymorphic type (model class) |
notable_id |
bigint | Polymorphic ID (model ID) |
creator_type |
varchar | Creator polymorphic type (nullable) |
creator_id |
bigint | Creator polymorphic ID (nullable) |
created_at |
timestamp | When the note was created |
updated_at |
timestamp | When the note was last updated |
⚙️ Configuration
Publish the config file to customize the package:
🎨 Advanced Examples
User Activity Log
Order Tracking
Support Tickets
🔍 Model Relationships
Access notes directly through Eloquent relationships:
📝 Note Model Properties
Each note instance provides:
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
🐛 Bug Reports
If you discover any bugs, please create an issue on GitHub.
📄 License
The MIT License (MIT). Please see License File for more information.
👨💻 Credits
- Mohamed Said
- All Contributors
Made with ❤️ by Mohamed Said
All versions of notable with dependencies
spatie/laravel-package-tools Version ^1.92.7
illuminate/contracts Version ^10.0||^11.0||^12.0