PHPackages                             amirsadjad/simple-list-formatter - 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. amirsadjad/simple-list-formatter

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

amirsadjad/simple-list-formatter
================================

Simple list formatter for UI development ease of use.

19PHP

Since Nov 16Pushed 3y ago1 watchersCompare

[ Source](https://github.com/Amirsadjad/simple-list-formatter)[ Packagist](https://packagist.org/packages/amirsadjad/simple-list-formatter)[ RSS](/packages/amirsadjad-simple-list-formatter/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

simple-list-formatter
=====================

[](#simple-list-formatter)

Simple list formatter for UI development ease of use.

This id a package to format your collections of data based on the UI needs. You can format "laravel collection", "eloquent collection" and "array". you can create a preset for every page of your application in the database and then just pass the data and preset to the facade and get the parsed result with desired columns, with sortability, searchability and dynamic paging. you can also pass metadata to the preset and it will be delivered to UI with the resultint list.

For installation run:

```
composer require amirsadjad/simple-list-formatter
```

then publish the config file by running:

```
php artisan vendor:publish --tag=simple-list-formatter-config
```

to migrate the table run:

```
php artisan migrate
```

Basic Usage:

```
use Amirsadjad\SimpleListFormatter\Facades\SimpleList;

// you need to start by using the function Of()
$list = SimpleList::Of($data, $preset);

// you can chain other methods
$list->search($query);
$list->sortBy($columnName, false);
$list->pageNumber($pageNumber);

// you have to run the generate() at the end to parse the data
$list->generate()
```

To interacting with presets table you can either use the Model class

```
SimpleListPresets::find($name);

// preset data needs to be formatted like this
$preset = [
  'columns' => [
    'column_name' => [
      'data_type' => 'string',
      'is_sortable' => 'bool',
      'is_searchable' => 'bool',
      'width' => 'int',
      'title' => 'string',
      'metadata' => 'array'
    ],
    ...
    ..
    .
  ],
  'page_size' => 'int',
];
```

Or you can use the built in APIs:

You can see an example of how to use this package in a project here:

###  Health Score

15

—

LowBetter than 3% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity23

Early-stage or recently created project

 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/c011156f28c761e3203de5fb584d8a23da3736cbf011f72f6209b772e2209b09?d=identicon)[Amirsadjad](/maintainers/Amirsadjad)

---

Top Contributors

[![Amirsadjad](https://avatars.githubusercontent.com/u/42342880?v=4)](https://github.com/Amirsadjad "Amirsadjad (7 commits)")

### Embed Badge

![Health badge](/badges/amirsadjad-simple-list-formatter/health.svg)

```
[![Health](https://phpackages.com/badges/amirsadjad-simple-list-formatter/health.svg)](https://phpackages.com/packages/amirsadjad-simple-list-formatter)
```

###  Alternatives

[shipmonk/name-collision-detector

Simple tool to find ambiguous classes or any other name duplicates within your project.

362.1M34](/packages/shipmonk-name-collision-detector)[bostondv/bootstrap-ninja-forms

Adds Bootstrap classes to Ninja Forms

222.2k](/packages/bostondv-bootstrap-ninja-forms)

PHPackages © 2026

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