PHPackages                             jwerd/inertia-table - 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. jwerd/inertia-table

ActiveLibrary

jwerd/inertia-table
===================

Easily create Inertia JS tables from Eloquent models

v1.0.8(5y ago)011MITPHP

Since Jul 4Pushed 5y agoCompare

[ Source](https://github.com/jwerd/inertia-table)[ Packagist](https://packagist.org/packages/jwerd/inertia-table)[ Docs](https://github.com/harmonic/inertiatable)[ RSS](/packages/jwerd-inertia-table/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (8)Versions (15)Used By (0)

Inertia Table
=============

[](#inertia-table)

[![Latest Version on Packagist](https://camo.githubusercontent.com/671813559924355d7d19339d8a44c1c31cda8e46d0632314ef908ef9a4844f31/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6861726d6f6e69632f696e65727469612d7461626c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/harmonic/inertia-table)[![Total Downloads](https://camo.githubusercontent.com/7a759d6580c35ebf27bbc82d85ed17c78dbc1ffdf1b217f1d45c47b8271b3dda/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6861726d6f6e69632f696e65727469612d7461626c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/harmonic/inertia-table)[![Build Status](https://camo.githubusercontent.com/caabda485e1fc71f624cccbe431d7210e7ccd69400181344badbda45f5ad61c1/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6861726d6f6e69632f696e65727469612d7461626c652f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/harmonic/inertia-table)[![StyleCI](https://camo.githubusercontent.com/c2fec32c47e4fe29de9663cf094b6194cfa9fc68a29d682147556c5394c5d470/68747470733a2f2f7374796c6563692e696f2f7265706f732f3139323139323732322f736869656c64)](https://styleci.io/repos/192192722)

Easily create tables using InertiaJS (and Tailwind CSS) and Laravel Models. Tables can be filtered and sorted. Can scaffold an entire model with one artisan command!

[![Laravel Preset - Click for video](https://github.com/Harmonic/laravel-preset/raw/master/docs/laravel-preset-screenshot.png)](https://www.youtube.com/watch?v=K_d_RboHBbI&feature=youtu.be)

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

[](#installation)

This package requires InertiaJS to be installed in your project. **It is strongly recommended that you also install the corresponding Vue component [inertia-table-vue](https://github.com/Harmonic/inertia-table-vue) to allow end to end scaffolding of an Inertia table in Vue**

Via Composer

```
$ composer require harmonic/inertia-table
```

Register the `remember` route middleware in your `App\HttpKernel` class:

```
protected $routeMiddleware = [
    // ..
    'remember' => \Reinink\RememberQueryStrings::class,
];
```

Usage
-----

[](#usage)

### Via CLI

[](#via-cli)

The quickest and easiest way to create an Inertia Table is using a single Artisan command. It will create the model, controller and Vue components for you automatically simply by supplying a model name as an argument.

```
$ php artisan make:inertiaTable User
```

Where User is the name of the model you wish to create. See the manual process below for what is created.

### Manually

[](#manually)

1. Modify your model so that it extends InertiaModel instead of model:

```
use harmonic\InertiaTable\InertiaModel;

class user extends InertiaModel {
    protected $perPage = 10; // Controlls number of items per page
...
```

2. Create a controller:

UsersController.php

```
namespace App\Http\Controllers;

use harmonic\InertiaTable\Facades\InertiaTable;
use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Request;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Support\Facades\Auth;
use App\User;

class UsersController extends Controller {
    public function index() {
        $user = new User();
        return InertiaTable::index($user, ['id', 'name', 'email', 'deleted_at']);
    }
}
```

The index method takes a model and an array of column names which you wish to display as parameters. The array is optional, InertiaTable will show all columns by default.

You can also stipulate which columns can be searched by adding a third parameter, an array of column names that can be filtered. If left blank all columns are searchable.

3. Add your routes in web.php. You can do these manually or using the custom inertia route included with this package:

```
Route::inertiaTable('users');
```

This will generate all your crud routes:

MethodURIActionGETusersApp\\Http\\Controllers\\UsersController@indexPOSTusersApp\\Http\\Controllers\\UsersController@storeDELETEusers/$uriApp\\Http\\Controllers\\UsersController@destroyPUTusers/$uriApp\\Http\\Controllers\\UsersController@updateGETusers/$uri/editApp\\Http\\Controllers\\UsersController@editPUTusers/$uri/restoreApp\\Http\\Controllers\\UsersController@restoreGETusers/createApp\\Http\\Controllers\\UsersController@create4. You will need to create your front end. It is recommend you use [inertia-table-vue](https://github.com/Harmonic/inertia-table-vue) for Vue projects. A JS example is provided at the bottom of [that repository](https://github.com/Harmonic/inertia-table-vue).

Change log
----------

[](#change-log)

Please see the [changelog](changelog.md) for more information on what has changed recently.

Testing
-------

[](#testing)

```
$ composer test
```

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

[](#contributing)

Please see [contributing.md](contributing.md) for details and a todolist.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Craig Harman](https://github.com/harmonic)
- Laravel 6 support by [atymic](https://github.com/atymic)
- [All Contributors](../../contributors)

License
-------

[](#license)

MIT. Please see the [license file](license.md) for more information.

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 66.7% 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 ~68 days

Recently: every ~125 days

Total

9

Last Release

1957d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/17558b8e116ac8ffb8bd782f7a50c0158e4ca159ec1b45b5bafce0dd92da738c?d=identicon)[jwerd](/maintainers/jwerd)

---

Top Contributors

[![atymic](https://avatars.githubusercontent.com/u/50683531?v=4)](https://github.com/atymic "atymic (6 commits)")[![jwerd](https://avatars.githubusercontent.com/u/423921?v=4)](https://github.com/jwerd "jwerd (2 commits)")[![jagDanJu](https://avatars.githubusercontent.com/u/3613218?v=4)](https://github.com/jagDanJu "jagDanJu (1 commits)")

---

Tags

laravelinertiainertiajsInertiaTable

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/jwerd-inertia-table/health.svg)

```
[![Health](https://phpackages.com/badges/jwerd-inertia-table/health.svg)](https://phpackages.com/packages/jwerd-inertia-table)
```

###  Alternatives

[laravel/horizon

Dashboard and code-driven configuration for Laravel queues.

4.2k84.2M224](/packages/laravel-horizon)[spatie/laravel-health

Monitor the health of a Laravel application

85810.0M83](/packages/spatie-laravel-health)[outhebox/laravel-translations

Manage your Laravel translations with a beautiful UI. Add, edit, delete, import, and export translations with ease.

80687.6k](/packages/outhebox-laravel-translations)[erag/laravel-lang-sync-inertia

A powerful Laravel package for syncing and managing language translations across backend and Inertia.js (Vue/React) frontends, offering effortless localization, auto-sync features, and smooth multi-language support for modern Laravel applications.

3812.2k](/packages/erag-laravel-lang-sync-inertia)[emargareten/inertia-modal

Inertia Modal is a Laravel package that lets you implement backend-driven modal dialogs for Inertia apps.

88103.7k](/packages/emargareten-inertia-modal)[ambengers/kinetic

Adds view-composer like feature to Inertia.js Laravel adapter.

9058.0k1](/packages/ambengers-kinetic)

PHPackages © 2026

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