Download the PHP package rudiwer/rwtable-laravel without Composer

On this page you can find all versions of the php package rudiwer/rwtable-laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package rwtable-laravel

rudiwer/rwtable-laravel

Reusable Laravel / Inertia backend package for the RWTable Vue 3 component

RWTable is a combined package consisting of a Vue 3 table component and a server-side Laravel / Inertia action class.

The table is specifically designed for use with Vue 3 / Inertia / Laravel. The styling is based on Tailwind CSS, and a Vuetify-styled version will be available soon.
The table itself can also be used independently of Inertia and Laravel, but Excel export and chart export currently still rely fully on Inertia.

The following features are available:

This package provides:

Monorepo split/release blueprint:

Demo video

https://youtu.be/AOOwaVZxRiQ

Table of Contents

  1. Requirements
  2. Installation
  3. Configuration
  4. Routes
  5. Request Contracts
  6. Controller Responses
  7. RwTableAction API
  8. Server Mode Recipes (Managed vs Manual)
  9. Database Schema
  10. Internationalization
  11. Security Notes
  12. Integration Example
  13. Troubleshooting

Requirements

Minimum supported versions (current package constraints)

Layer Minimum
PHP 8.3
Laravel 13.0
inertiajs/inertia-laravel 2.0 (stable) or 3.0 beta

Notes:

From composer.json:

Package Version
php ^8.3
illuminate/database ^13.0
illuminate/http ^13.0
illuminate/support ^13.0
inertiajs/inertia-laravel ^2.0 | | ^3.0@beta

Installation

Quick Start (production install)

Use matching major/minor versions for both packages (x.y).

Frontend-specific features such as the top-right toolbar 3-dot menu payload and date/datetime display formatting are documented in:

Optional: local path install (maintainers)

Add a path repository in your app composer.json:

Then require the package from that local path:

Publish resources

Run migrations:


Configuration

Published file: config/rwtable.php

Config keys

Key Description
routes.enabled Enables/disables package route loading
routes.prefix URI prefix for package routes
routes.name_prefix Route name prefix
routes.middleware Middleware stack for package routes
field_aliases Safe alias map used by RwTableAction::resolveColumn()
security.allowed_field_pattern Regex whitelist for user-supplied field names

Practical full config example:


Routes

Routes are loaded from routes/web.php when routes.enabled=true.

Method URI Name Controller
GET /rw-table-charts/{tableIdentifier} rw-table-charts.index RwTableChartController@index
POST /rw-table-charts/{tableIdentifier} rw-table-charts.store RwTableChartController@store
DELETE /rw-table-charts/{id} rw-table-charts.destroy RwTableChartController@destroy
GET /rw-table-exports/{tableIdentifier} rw-table-exports.index RwTableExportController@index
POST /rw-table-exports/{tableIdentifier} rw-table-exports.store RwTableExportController@store
DELETE /rw-table-exports/{id} rw-table-exports.delete RwTableExportController@destroy
DELETE /rw-table-exports/{id}/destroy rw-table-exports.destroy RwTableExportController@destroy

All routes are user-scoped (authenticated user only).


Request Contracts

StoreRwTableExportRequest

StoreRwTableChartRequest

Core fields:

The chart request accepts both:

Allowed chart types:

Practical chart payload (all common fields):

Practical export payload (all common fields):


Controller Responses

Charts

Exports

Validation failures return HTTP 422 with Laravel validation payload.


RwTableAction API

RwTableAction is the central reusable backend helper.

handle(Request $request, string $modelClass, string $viewComponent, array $globalFields = ['id'], int $perPageDefault = 25, array $extraProps = [], ?callable $queryCallback = null): Inertia\Response

Supports:

Practical handle request payload (all key arrays):

Option-mode example (single/multi option filters):

update(Request $request, string $modelClass, int|string $id, array $editableFields = [], string $idKey = 'id'): JsonResponse

Supports:

Practical update payload with full arrays:

create(Request $request, string $modelClass, array $editableFields = [], array $defaults = [], string $idKey = 'id'): JsonResponse

Supports:

Practical create payload with all common fields:

destroy(Request $request, string $modelClass, int|string $id, string $idKey = 'id'): JsonResponse

Deletes by id.

reindexOrdering(string $modelClass, string $orderField = 'index', string $idKey = 'id'): JsonResponse

Rebalances ordering with gap strategy (1000 increments).


Server Mode Recipes (Managed vs Manual)

Use one of the two proven backend patterns below.

Recipe A: Managed mode backend (recommended)

Use RwTableAction::handle() for data retrieval and keep controller code compact.

Client side usually uses:

Recipe B: Manual mode backend (serverSide=true)

In this setup, parent frontend handles @change and calls your endpoint. Backend returns normalized pagination payload.

Manual mode best-practice notes:


Database Schema

rw_table_charts

rw_table_exports


Internationalization

Translations are loaded under namespace rwtable.

In service provider:

Published override path:

Shipped locales:


Security Notes

Key protections built into the package:

Recommended:


Integration Example


Troubleshooting

Routes not available

403 from chart/export endpoints

422 during inline update/create

SQL/column errors in filtering/sorting


All versions of rwtable-laravel with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
illuminate/database Version ^13.0
illuminate/http Version ^13.0
illuminate/support Version ^13.0
inertiajs/inertia-laravel Version ^2.0 || ^3.0@beta
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package rudiwer/rwtable-laravel contains the following files

Loading the files please wait ...