PHPackages                             halalsoft/laravel-dynamic-column - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. halalsoft/laravel-dynamic-column

ActiveLibrary[Database &amp; ORM](/categories/database)

halalsoft/laravel-dynamic-column
================================

Provides a trait for Laravel Eloquent/Query builder to handle MariaDB Dynamic Column.

v0.1.3(3y ago)61311[3 issues](https://github.com/HalalSoft/laravel-dynamic-column/issues)MITPHPPHP &gt;=7.3

Since Feb 12Pushed 3y ago2 watchersCompare

[ Source](https://github.com/HalalSoft/laravel-dynamic-column)[ Packagist](https://packagist.org/packages/halalsoft/laravel-dynamic-column)[ RSS](/packages/halalsoft-laravel-dynamic-column/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (4)Versions (7)Used By (0)

Trait to Manage an MariaDB dynamic columns blob
===============================================

[](#trait-to-manage-an-mariadb-dynamic-columns-blob)

[![Latest Version on Packagist](https://camo.githubusercontent.com/a2a1b54df7939f26b6cb6e0f420591efb2fe8bd0e3f4677c0d4f3c28bfea48da/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f68616c616c736f66742f6c61726176656c2d64796e616d69632d636f6c756d6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/halalsoft/laravel-dynamic-column)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Quality Score](https://camo.githubusercontent.com/57955bb38989c30a0eff24b488a257640a7d88a1fa96a5507d202ccaf21089ec/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f68616c616c736f66742f6c61726176656c2d64796e616d69632d636f6c756d6e2e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/halalsoft/laravel-dynamic-column)[![Total Downloads](https://camo.githubusercontent.com/caa5518403a59c6b71335ac5bc54d6939be3167048101a27b82aabc4ac85d497/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f68616c616c736f66742f6c61726176656c2d64796e616d69632d636f6c756d6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/halalsoft/laravel-dynamic-column)

The `laravel-dynamic-column` package provides a `HasDynamicColumn` trait, which allows you to easily handle MariaDB dynamic column using Eloquent or Query Builder.

```
// The `Author` class uses the `HasDynamicColumn` trait and `Dynamic` cast attribute on the `option` column
$author = Author::where('option->vehicle','car')->first();

$author = $author->option;
// => Array containing `option` dynamic  column
$option = $author->option;
$option['vehicle_brand'] = 'Esemka';
$author->option = $option;
$author->save();

//You can also create data field as array
$newData = MyModel::create([
    'other_column' => 'this just another column data',
    'the_column' => ['data1'=>'value1','data2'=>'value2']
]);

//to update a json field/key you use, you may use the `->` operator when calling the update method:

$page->update(['content->data1' => 'value1new']);

//or you can still update whole column using normal array:
$page->update(['content' => ['data1'=>'value1new','data2'=>'value2new']]);
//You can set as array using other method like `updateOrCreate()`, `firstOrCreate()`,  etc.

//This package also support query builder using:
Model::query()->where('the_column->data1', 'value1')->first();
```

Install
-------

[](#install)

You can install the package via composer:

```
composer require halalsoft/laravel-dynamic-column
```

Usage
-----

[](#usage)

You can start using the package by adding the `HasDynamicColumn` trait and use `Dynamic` as attribute cast to your models.

```
use Illuminate\Database\Eloquent\Model;
use Halalsoft\LaravelDynamicColumn\Dynamic;
use Halalsoft\LaravelDynamicColumn\HasDynamicColumn;

class Post extends Model
{
    use HasDynamicColumn;
    protected $casts
        = [
            'content' => Dynamic::class,
        ];
}
```

### Other explain will be added soon

[](#other-explain-will-be-added-soon)

Security
--------

[](#security)

If you discover any security related issues, just open an issue on this git or email me to  .

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

22

—

LowBetter than 23% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~112 days

Recently: every ~141 days

Total

6

Last Release

1348d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f15ba8f975a0fda655b8ad78a00658945371b4fe346f4b88af19d175d55878c3?d=identicon)[dyaskur](/maintainers/dyaskur)

---

Top Contributors

[![dyaskur](https://avatars.githubusercontent.com/u/9539970?v=4)](https://github.com/dyaskur "dyaskur (19 commits)")[![pishguy](https://avatars.githubusercontent.com/u/6617583?v=4)](https://github.com/pishguy "pishguy (1 commits)")

---

Tags

dynamic-columnseloquentlaravelmariadblaravelmariadbeloquentilluminatedynamicblobdynamic-column

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/halalsoft-laravel-dynamic-column/health.svg)

```
[![Health](https://phpackages.com/badges/halalsoft-laravel-dynamic-column/health.svg)](https://phpackages.com/packages/halalsoft-laravel-dynamic-column)
```

###  Alternatives

[tucker-eric/eloquentfilter

An Eloquent way to filter Eloquent Models

1.8k4.8M26](/packages/tucker-eric-eloquentfilter)[watson/validating

Eloquent model validating trait.

9723.3M46](/packages/watson-validating)[cybercog/laravel-love

Make Laravel Eloquent models reactable with any type of emotions in a minutes!

1.2k302.7k1](/packages/cybercog-laravel-love)[cviebrock/eloquent-taggable

Easy ability to tag your Eloquent models in Laravel.

567694.8k3](/packages/cviebrock-eloquent-taggable)[reedware/laravel-relation-joins

Adds the ability to join on a relationship by name.

2121.2M13](/packages/reedware-laravel-relation-joins)[io238/laravel-iso-countries

Ready-to-use Laravel models and relations for country (ISO 3166), language (ISO 639-1), and currency (ISO 4217) information with multi-language support.

5462.3k](/packages/io238-laravel-iso-countries)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
