close
Skip to content

trysettleup/visualizations

Repository files navigation

Visualizations

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

A Laravel package for building data visualizations. Define DataGrids, Charts, and Metrics as PHP classes — the package handles query generation, filtering, sorting, pagination, and schema generation for your front end.

Installation

composer require settleup/visualizations
php artisan vendor:publish --tag="visualizations-migrations"
php artisan migrate

Quick Example

use SettleUp\Visualizations\DataGrids\Abstracts\DataGrid;
use SettleUp\Visualizations\DataGrids\Columns\Number;
use SettleUp\Visualizations\DataGrids\Columns\Text;

class UserDataGrid extends DataGrid
{
    public function getColumns(): Collection
    {
        return collect([
            Number::make('users.id', 'ID')->asRowKey(),
            Text::make('users.name', 'Name'),
            Text::make('users.email', 'Email'),
        ]);
    }

    public function getQuery(): Builder
    {
        return DB::table('users');
    }
}
// routes/api.php
Route::dataGrid(UserDataGrid::class);
Route::chart(RevenueChart::class);
Route::metric(TotalOrdersMetric::class);

Roadmap

v2

  • Split DataGrid Views into its own package (In Progress)
  • DataGrid exports (In Progress)

Documentation

Full documentation is available at the documentation site.

Testing

composer test

License

The MIT License (MIT). Please see License File for more information.

About

Charts, DataGrids and Metrics as PHP classes for Laravel

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages