PHPackages                             aayaresko/laravel-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. [Utility &amp; Helpers](/categories/utility)
4. /
5. aayaresko/laravel-table

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

aayaresko/laravel-table
=======================

Simple HTML table builder for laravel 5

v1.0.4(9y ago)4792MITPHPPHP &gt;=5.6.4

Since Oct 22Pushed 9y ago2 watchersCompare

[ Source](https://github.com/aayaresko/laravel-table)[ Packagist](https://packagist.org/packages/aayaresko/laravel-table)[ RSS](/packages/aayaresko-laravel-table/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (2)Dependencies (2)Versions (3)Used By (0)

Laravel Html table builder
==========================

[](#laravel-html-table-builder)

HTML table builder for laravel 5

Installation
============

[](#installation)

The preferred way to install extension is via composer. Check the composer.json for this extension's requirements and dependencies. To install, either run

```
$ php composer.phar require aayaresko/laravel-table
```

or add

```
"aayaresko/laravel-table": "^1.0"
```

to the require section of your composer.json.

Configuration
=============

[](#configuration)

It does not require any additional configuration.

Usage
=====

[](#usage)

Simply create a new instance of `TablesFacade` and pass to it all required parameters:

```
$table = new TablesFacade($data_provider, $attributes, $default_actions_route);
```

`$data_provider` is used as a models source. It should be either an instance of `Illuminate\Contracts\Pagination\LengthAwarePaginator` or `Illuminate\Database\Eloquent\Collection`.

`$attributes` array holds list of attributes, that should be rendered in each table row. You can use 'dot' syntax to target attribute value of related models:

```
$table = new TablesFacade(
    $data_provider,
    [
        'nickname',
        'email',
        'profile.full_name',
        'created',
    ],
    $default_actions_route
);
```

In your view you should place something like this:

```

    {{ $table->renderTable() }}
    {{ $table->renderLinks() }}

```

You scan use `renderLinks()` method only when you use `Illuminate\Contracts\Pagination\LengthAwarePaginator` as `$data_provider`.

You can specify custom column name for any attribute:

```
$table = new TablesFacade(
    $data_provider,
    [
        'Alias' => 'nickname',
        'email',
        'Full name' => 'profile.full_name',
    ],
    $default_actions_route
);
```

That custom name will be translated automatically.

You can attach a callback to render any attribute value:

```
$table = new TablesFacade(
    $data_provider,
    [
        'nickname',
        'email',
        'profile.full_name',
        'created',
        'alias' => function ($model) {
            return $model->alias;
        }
    ],
    $default_actions_route
);
```

Function signature is pretty straightforward: `function ($model) {}`.

`$default_actions_route` is route which will be used as 'parent' to generate links for all action buttons. You can set &lt;$default\_actions\_route to 'false'.

You can configure your own list of action buttons via `$action_buttons` property.

```
'show' => [
    'title' => '',
    'route' => 'backend.accounts',
],
'edit' => [
    'title' => '',
    'route' => 'frontend.accounts',
],
'destroy' => [
    'title' => 'My button content',
    'url' => 'backend/accounts/destroy'
    'options' => [
        'class' => 'delete-ajax',
    ]
]
```

Please be aware that `route` and `url` options are mutually exclusive. You can remove `$action_buttons` column by setting 'false' as `$action_buttons` value. You can specify any html options for any button via button `options` array.

You can specify attributes values for the table itself, tr and td tags of the table via `$table_options`, `$row_options` and `$item_options` respectively. You can specify text, which will be displayed in case of no models via `$not_found_text`.

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.9% 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 ~9 days

Total

2

Last Release

3529d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/06e7bed9064a58e5e46fb881990859f810313aa291b4000310f3a36de3b2d22a?d=identicon)[aayaresko](/maintainers/aayaresko)

---

Top Contributors

[![aayaresko](https://avatars.githubusercontent.com/u/8190713?v=4)](https://github.com/aayaresko "aayaresko (8 commits)")[![Turek](https://avatars.githubusercontent.com/u/635680?v=4)](https://github.com/Turek "Turek (1 commits)")

---

Tags

laravelhtmltablehtml-table

### Embed Badge

![Health badge](/badges/aayaresko-laravel-table/health.svg)

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

###  Alternatives

[ramonrietdijk/livewire-tables

Dynamic tables for models with Laravel Livewire

21255.6k](/packages/ramonrietdijk-livewire-tables)[okipa/laravel-table

Generate tables from Eloquent models.

57153.1k](/packages/okipa-laravel-table)[gbrock/laravel-table

Table functionality for Laravel models

7645.2k](/packages/gbrock-laravel-table)[markwalet/nova-modal-response

A Laravel Nova asset for Modal responses on an action.

17818.7k](/packages/markwalet-nova-modal-response)[orchestra/html

HTML Component for Orchestra Platform

37112.7k2](/packages/orchestra-html)[tomshaw/electricgrid

A feature-rich Livewire package designed for projects that require dynamic, interactive data tables.

119.2k](/packages/tomshaw-electricgrid)

PHPackages © 2026

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