PHPackages                             enzoaccardo/ci4-adminkit - 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. enzoaccardo/ci4-adminkit

ActiveLibrary

enzoaccardo/ci4-adminkit
========================

Admin kit per CodeIgniter 4: Smarty + list builder (filtri/ordinamento/paginazione) + form builder (widget, interazioni, AJAX)

v0.1.0(3mo ago)01↑2900%3MITPHPPHP ^8.2

Since Apr 11Pushed todayCompare

[ Source](https://github.com/enzoaccardo/ci4-adminkit)[ Packagist](https://packagist.org/packages/enzoaccardo/ci4-adminkit)[ RSS](/packages/enzoaccardo-ci4-adminkit/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (2)Versions (2)Used By (3)

ci4-adminkit
============

[](#ci4-adminkit)

Base per costruire pannelli di amministrazione con CodeIgniter 4.

È nato mettendo insieme le cose che riscrivevo ogni volta in un gestionale: il rendering delle viste, le liste con filtri e ordinamento, i form, la gestione dei permessi. Qui dentro c'è la parte che non dipende dal dominio dell'applicazione, così su un progetto nuovo parti da qualcosa invece che dal foglio bianco.

In due parole
-------------

[](#in-due-parole)

Il pezzo centrale è `BaseAdminController`. Un controller che lo estende ha già:

- le viste renderizzate con Smarty 5, con gli helper di CI4 già registrati (`base_url`, `csrf_field`, `sort_url`, il menu, ecc.);
- un *list builder* fatto di tre trait (paginazione, filtri, ordinamento) che lavorano su una whitelist di colonne, quindi niente parametri che finiscono dritti nella query;
- un *form builder* dichiarativo: descrivi i campi in un array e vengono fuori validazione lato client, widget (Tom Select, flatpickr, FilePond, cron), le interazioni tra campi (mostra/nascondi, obbligatori condizionati, cascate via AJAX), il submit in AJAX e la creazione al volo in una modale.

Ci sono poi un `BaseModel` e una `BaseMigration` con i campi di audit (`created_by` / `updated_by` / `deleted_by` e soft delete), un helper per registrare le rotte partendo dai controller (`Routing\Discovery`) e un contratto RBAC opzionale: se in giro c'è un `service('rbac')` che lo implementa, il controllo dei permessi si attiva da solo, altrimenti il kit resta chiuso di default sulle azioni protette.

Quello che il kit *non* fa, di proposito: non impone un tema (il markup usa le classi di Bootstrap ma il CSS lo porti tu), non decide come autentichi gli utenti, non crea il menu. Per il tema pronto c'è `ci4-adminkit-adminlte4`.

Installazione
-------------

[](#installazione)

```
composer require enzoaccardo/ci4-adminkit
php spark adminkit:publish

```

Il `publish` copia gli asset dei widget in `public/`. Richiede PHP 8.2+, CodeIgniter 4.7 e Smarty 5 (tirato dentro come dipendenza).

Un form, tanto per capirsi
--------------------------

[](#un-form-tanto-per-capirsi)

```
protected function formConfig(): array
{
    return [
        'action'   => base_url('admin/utenti/salva'),
        'sections' => [[
            'title'  => 'Anagrafica',
            'fields' => [
                'nome'  => ['type' => 'text',  'label' => 'Nome', 'required' => true],
                'email' => ['type' => 'email', 'label' => 'Email'],
                'ruolo' => ['type' => 'select', 'label' => 'Ruolo', 'widget' => 'tomselect',
                            'options' => $this->ruoli()],
            ],
        ]],
    ];
}
```

Nel controller poi `buildForm($this->formConfig())` e nella view `{include file='layout/_partials/form.tpl'}`. Il resto lo fa il builder.

Licenza
-------

[](#licenza)

MIT. Vedi il file [LICENSE](LICENSE).

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance91

Actively maintained with recent releases

Popularity2

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity36

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.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

109d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/12847278?v=4)[Enzo Accardo](/maintainers/enzoaccardo)[@enzoaccardo](https://github.com/enzoaccardo)

---

Top Contributors

[![enzoaccardo](https://avatars.githubusercontent.com/u/12847278?v=4)](https://github.com/enzoaccardo "enzoaccardo (14 commits)")

### Embed Badge

![Health badge](/badges/enzoaccardo-ci4-adminkit/health.svg)

```
[![Health](https://phpackages.com/badges/enzoaccardo-ci4-adminkit/health.svg)](https://phpackages.com/packages/enzoaccardo-ci4-adminkit)
```

###  Alternatives

[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.2k18.1k](/packages/prestashop-prestashop)[codeigniter4/appstarter

CodeIgniter4 starter app

1791.8M](/packages/codeigniter4-appstarter)[abydahana/aksara

Aksara is a CodeIgniter based CRUD Toolkit you can use to build complex applications become shorter, secure and more reliable just in a few lines of code. Serving both CMS or Framework, produce both HEADLESS (RESTful API) or TRADITIONAL (Browser Based), just by writing single controller. Yet it's reusable, scalable and ready to use!

1111.2k](/packages/abydahana-aksara)[bearsaturday/bearsaturday

BEAR.Saturday framework

2056.7k1](/packages/bearsaturday-bearsaturday)[maniaba/asset-connect

AssetConnect is a file management library for CodeIgniter 4 that allows you to associate files with any entity in your application

1015.3k](/packages/maniaba-asset-connect)

PHPackages © 2026

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