PHPackages                             0jkb/schemator - 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. 0jkb/schemator

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

0jkb/schemator
==============

Schemator is an advanced Laravel package designed to streamline development workflows by automatically generating Eloquent models and optional Filament resources. It offers features like selective table generation, skipping default Laravel tables, and enhanced model generation with Laravel Sanctum support for the User model.

1.2(2y ago)120MITPHPPHP ^7.3|^8.0

Since Jan 12Pushed 2y ago1 watchersCompare

[ Source](https://github.com/0jkb/schemator)[ Packagist](https://packagist.org/packages/0jkb/schemator)[ RSS](/packages/0jkb-schemator/feed)WikiDiscussions master Synced 1mo ago

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

Schemator for Laravel
=====================

[](#schemator-for-laravel)

Schemator is a Laravel package designed to automate the process of generating Eloquent models and Filament resources based on your database schema. It simplifies the initial setup of models in Laravel projects by auto-generating them with properties and relationships.

Features
--------

[](#features)

- Automatically generates Eloquent models for each database table.
- Supports a wide array of relationships including `belongsTo`, `hasMany`, `hasOne`, `belongsToMany`, `morphOne`, and `morphMany`.
- Generates Filament resources if Filament is installed, with support for various options like `--simple`, `--generate`, `--soft-deletes`, and `--view`.
- Embeds a comment in each model indicating creation by Schemator for clarity and tracking.

Requirements
------------

[](#requirements)

- Laravel 8 or newer
- PHP 7.3 or newer
- FilamentPHP (optional for resource generation)

Installation
------------

[](#installation)

To install Schemator, run the following command in your Laravel project:

```
composer require 0jkb/Schemator
```

After installation, you can use the Artisan command provided by Schemator.

Usage :
-------

[](#usage-)

- -f | --filament-options: Activate Filament resource generation with specific options. Accepts both shorthand (g, s, d, v, e) and full words (generate, simple, soft-deletes, view, empty). For example, -f gs or -f generate,simple.
- --skip= for specifying tables to skip.
- --skip-default as a flag to skip Laravel's default tables.
- --only= to generate models for specific tables.

Generate models only :

```
php artisan schemator:generate
```

To generate models and empty Filament resources, run (e | empty option):

```
php artisan schemator:generate -f e
```

- This will create several files in the app/Filament/Resources directory with empty form and table .

To generate models and optionally Filament resources, run:

```
php artisan schemator:generate -f [options]
```

Generate Filament resources (s | simple option):

```
php artisan schemator:generate -f s
```

- This command will generate Filament resources for each table, applying the simple option.

Generate Filament resources (g | generate option):

```
php artisan schemator:generate -f g
```

Generate models and Filament resources with all options:

```
php artisan schemator:generate -f sgdv
```

Skipping specific tables(--skip option):

```
php artisan schemator:generate -f sgdv --skip=users,logs
```

Generating models for specific tables(--only option):

```
php artisan schemator:generate -f sgdv --only=users,posts
```

- This command will generate models only for the 'users' and 'posts' tables.

Generate models and Filament resources, skipping Laravel default tables (--skip-default option):

```
php artisan schemator:generate -f sgdv --skip-default
```

Contributing
------------

[](#contributing)

Contributions to Schemator are welcome. You can contribute in various ways:

- Submitting bug reports and feature requests.
- Writing code for new features or bug fixes.
- Improving documentation.

Please feel free to fork the repository and submit pull requests.

License
-------

[](#license)

Schemator is open-sourced software licensed under the MIT license.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~14 days

Total

3

Last Release

820d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d953147e6b1f5c820428c19c01d04692764f9887f07a4d4faf0cddf514164a71?d=identicon)[0jkb](/maintainers/0jkb)

---

Top Contributors

[![jkbroot](https://avatars.githubusercontent.com/u/122788098?v=4)](https://github.com/jkbroot "jkbroot (10 commits)")

---

Tags

laravelschemator

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/0jkb-schemator/health.svg)

```
[![Health](https://phpackages.com/badges/0jkb-schemator/health.svg)](https://phpackages.com/packages/0jkb-schemator)
```

###  Alternatives

[tucker-eric/eloquentfilter

An Eloquent way to filter Eloquent Models

1.8k4.8M26](/packages/tucker-eric-eloquentfilter)[laravel-doctrine/orm

An integration library for Laravel and Doctrine ORM

8425.3M87](/packages/laravel-doctrine-orm)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[clickbar/laravel-magellan

This package provides functionality for working with the postgis extension in Laravel.

423715.4k1](/packages/clickbar-laravel-magellan)[cybercog/laravel-clickhouse

ClickHouse migrations for Laravel

163166.8k](/packages/cybercog-laravel-clickhouse)[reedware/laravel-relation-joins

Adds the ability to join on a relationship by name.

2121.2M13](/packages/reedware-laravel-relation-joins)

PHPackages © 2026

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