PHPackages                             zephyrhq/vue\_datatable\_bundle - 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. zephyrhq/vue\_datatable\_bundle

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

zephyrhq/vue\_datatable\_bundle
===============================

Bundle for server processing of vue-table2 lib

0141PHP

Since Oct 22Pushed 7y ago1 watchersCompare

[ Source](https://github.com/ZephyrHQ/VueDatatableBundle)[ Packagist](https://packagist.org/packages/zephyrhq/vue_datatable_bundle)[ RSS](/packages/zephyrhq-vue-datatable-bundle/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependenciesVersions (3)Used By (0)

VueDatatableBundle
==================

[](#vuedatatablebundle)

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

[](#installation)

```
composer require zephyrhq/vue_datatable_bundle
```

Configuration
-------------

[](#configuration)

```
vue_datatable:
    # The vue-table2 server processing route
    vue_table2_route_name: vuetable2_process
```

Usage
-----

[](#usage)

### With Manager

[](#with-manager)

```
public function productDataAction(Request $request): Response
{
    $datatable = $this->get(Datatable{Manager|Provider|Factory|Builder}::class)->getDatatable(DatatableType::class);

    return $datatable->handleRequest($request)->getResponse();
}
```

### Directly In controller

[](#directly-in-controller)

Create a provider that is responsible to retrieve the data from a database or whatever, juste implements the DatatableProviderInterface.

```
namespace App\DatatableProvider;

use VueDatatableBundle\Domain\Datatable;
use VueDatatableBundle\Domain\Provider\ArrayResultSet;
use VueDatatableBundle\Domain\Provider\DatatableProviderInterface;
use VueDatatableBundle\Domain\Provider\ResultSetInterface;

class ProductProvider implements DatatableProviderInterface
{
    public function getResult(Datatable $datatable): ResultSetInterface
    {
        $datatableRequest = $datatable->getRequest();

        // from a database or whatever
        $data = [
            [
                'id' => '1',
                'name' => 'Sofa',
                'price' => 102.99,
                'vat' => 0.2,
                'availableQuantity' => 50,
            ],
            [
                'id' => '2',
                'name' => 'Table',
                'price' => 50.65,
                'vat' => 0.2,
                'availableQuantity' => 3,
            ],
            [
                'id' => '3',
                'name' => 'TV',
                'price' => 550.0,
                'vat' => 0.2,
                'availableQuantity' => 999,
            ],
        ];

        return new ArrayResultSet($data, \count($data), \count($data));
    }
}
```

In a controller :

```
public function vuetable2Process(Request $request,
    DatatableInteractorInterface $datatableInteractor,
    ProductProvider $productProvider): Response
{
    $datatable = (new Datatable())
        ->addColumn(new StringColumn('toto'))
        ->addColumn(new StringColumn('description'))
        ->setProvider($productProvider)
    ;
    $dtResult = $datatableInteractor->handleRequest($datatable, $request);
    $response = $datatableInteractor->createResponse($datatable, $dtResult);

    return $response;
}
```

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity43

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.

### Community

Maintainers

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

---

Top Contributors

[![nicodmf](https://avatars.githubusercontent.com/u/173332?v=4)](https://github.com/nicodmf "nicodmf (11 commits)")

### Embed Badge

![Health badge](/badges/zephyrhq-vue-datatable-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/zephyrhq-vue-datatable-bundle/health.svg)](https://phpackages.com/packages/zephyrhq-vue-datatable-bundle)
```

###  Alternatives

[ashallendesign/redactable-models

A Laravel package for easily redacting model data.

1143.4k](/packages/ashallendesign-redactable-models)[byrokrat/banking

Data types for accounts in the swedish banking system

1395.6k6](/packages/byrokrat-banking)[machy8/webloader

Simple, easy to use, php bundler for javascript and css

1934.2k3](/packages/machy8-webloader)[tobimori/kirby-tailwind-merge

Tailwind Merge for Kirby CMS

276.3k](/packages/tobimori-kirby-tailwind-merge)[imarc/craft-sass

A Craft plugin that compiles SASS on the server as needed.

145.8k](/packages/imarc-craft-sass)

PHPackages © 2026

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