{"repo":"kolossal-io/laravel-multiplex","free":true,"listed":false,"github":"https://github.com/kolossal-io/laravel-multiplex","clone":"git clone https://github.com/kolossal-io/laravel-multiplex.git","description":"A Laravel package to attach time-sliced meta data to Eloquent models.","language":"PHP","stars":292,"topics":["eloquent","laravel","meta","metadata","timetravel"],"license":"MIT","category":"databases-storage","readme_excerpt":"A Laravel package to attach time-sliced meta data to Eloquent models. View Table of Contents --- What it does Multiplex allows you to attach time-sliced metadata to Eloquent models in a convenient way. Features - Metadata is saved in versions: Schedule changes to metadata, change history or retrieve metadata for a specific point in time. - Supports fluent syntax: Use your model’s metadata as if they were properties. - Polymorphic relationship allows adding metadata to any Eloquent model without worrying about the database schema. - Easy to try: Extend existing database columns of your model with versionable metadata without touching or deleting your original columns. - Type conversion system heavily based on Laravel-Metable allows data of numerous different scalar and object types to be stored and retrieved. Why another Metadata Package? The main difference is that the metadata in Multiplex has a timestamp that defines validity. This allows changes to be tracked and planned. You can inspect all metadata on your model at a specific point in time and Multiplex will by default only give you the most current. Since Multiplex is storing the metadata in a polymorphic table, it can easily be plugged into existing projects to expand properties of your models. This even works without removing the relevant table columns of your model: They are used as a fallback. And it’s low profile: If you don't like it, just remove the HasMeta Trait and everything is back to normal. Table of Content","default_branch":null,"files":null,"tree":[],"storefront":"/r/kolossal-io","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kolossal-io/laravel-multiplex/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}