PHPackages                             lvntr/starter-kit - 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. [Admin Panels](/categories/admin)
4. /
5. lvntr/starter-kit

Abandoned → [lvntr/laravel-starter-kit](/?search=lvntr%2Flaravel-starter-kit)Library[Admin Panels](/categories/admin)

lvntr/starter-kit
=================

Laravel Starter Kit with DDD architecture, Inertia.js, Vue 3, PrimeVue, and role-based permissions.

v13.0.18(2mo ago)1146↓77.8%PolyForm-Noncommercial-1.0.0PHPPHP ^8.2CI passing

Since Mar 19Pushed 1mo agoCompare

[ Source](https://github.com/lvntrdev/starter-kit)[ Packagist](https://packagist.org/packages/lvntr/starter-kit)[ RSS](/packages/lvntr-starter-kit/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (27)Versions (83)Used By (0)

Lvntr Starter Kit
=================

[](#lvntr-starter-kit)

### Admin-first Laravel starter kit.

[](#admin-first-laravel-starter-kit)

[![CI](https://camo.githubusercontent.com/09f3705299ebf7d94199e0a318972b4d67e1e5e6dca75bdb3f333c7cb481ad05/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6c766e74726465762f6c61726176656c2d737461727465722d6b69742f63692e796d6c3f6272616e63683d6d6173746572267374796c653d666c61742d737175617265266c6162656c3d4349)](https://camo.githubusercontent.com/09f3705299ebf7d94199e0a318972b4d67e1e5e6dca75bdb3f333c7cb481ad05/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6c766e74726465762f6c61726176656c2d737461727465722d6b69742f63692e796d6c3f6272616e63683d6d6173746572267374796c653d666c61742d737175617265266c6162656c3d4349)[![License](https://camo.githubusercontent.com/31e3d0700f57478f7e52a14992b490026dd9b4666f0a866ed6d5a399d977be5b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d506f6c79466f726d2d2d4e6f6e636f6d6d65726369616c253230312e302e302d6635396530623f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/31e3d0700f57478f7e52a14992b490026dd9b4666f0a866ed6d5a399d977be5b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d506f6c79466f726d2d2d4e6f6e636f6d6d65726369616c253230312e302e302d6635396530623f7374796c653d666c61742d737175617265)[![Packagist Version](https://camo.githubusercontent.com/0ef06d7f0bdbfdb760d1ee2b0fc8512df5ab55c3b9fefdcdb0c54061d657f013/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6c766e74722f6c61726176656c2d737461727465722d6b69743f7374796c653d666c61742d737175617265266c6162656c3d7061636b6167697374)](https://camo.githubusercontent.com/0ef06d7f0bdbfdb760d1ee2b0fc8512df5ab55c3b9fefdcdb0c54061d657f013/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6c766e74722f6c61726176656c2d737461727465722d6b69743f7374796c653d666c61742d737175617265266c6162656c3d7061636b6167697374)[![Downloads](https://camo.githubusercontent.com/87a26f233863b521e1e671320659ea145339b26beab5c7e7092a396401d0ba86/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c766e74722f6c61726176656c2d737461727465722d6b69743f7374796c653d666c61742d737175617265266c6162656c3d646f776e6c6f616473)](https://camo.githubusercontent.com/87a26f233863b521e1e671320659ea145339b26beab5c7e7092a396401d0ba86/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c766e74722f6c61726176656c2d737461727465722d6b69743f7374796c653d666c61742d737175617265266c6162656c3d646f776e6c6f616473)

> ## ⚠️ WARNING
>
> [](#️-warning)
>
> This repository is under active development and is subject to frequent changes. The stability of the project is not yet guaranteed. Please consider the following points before use:
>
> 1. **Code Changes:** The directory structure or core classes may undergo radical changes without prior notice.
> 2. **Update Process:** Updates may not always provide an automated migration path. In addition to running update commands, you may need to perform manual interventions by checking the `README` or `CHANGELOG` files.
> 3. **Risk:** Significant changes may lead to data loss or breaking issues in your existing project.

Introduction
------------

[](#introduction)

Lvntr Starter Kit is a full-featured admin panel for Laravel, built with **Laravel 13**, **Inertia.js v3**, **Vue 3**, **PrimeVue 4** and **Tailwind CSS 4**.

Unlike the official Laravel starter kits, which ship a minimal authentication scaffold, this kit gives you a production-ready admin panel on day one: users, roles, permissions, activity logs, settings, file manager, 2FA, and a DDD-style domain layer you can extend.

It is designed for teams who want to skip re-building the same admin screens on every project and go straight to business features.

> **Website &amp; Documentation:** [starter-kit.lvntr.dev](https://starter-kit.lvntr.dev/)Installation guide, component references, architecture notes and examples.

Screenshots
-----------

[](#screenshots)

[![Dark & Light themes](https://camo.githubusercontent.com/d76bc63199ebc099637a8965476ff8674b2376a5849a359c9a923442767a56ae/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f6461726b2d6c696768742e706e67)](https://camo.githubusercontent.com/d76bc63199ebc099637a8965476ff8674b2376a5849a359c9a923442767a56ae/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f6461726b2d6c696768742e706e67)

[![Login screen](https://camo.githubusercontent.com/1d14b8136cf3f0c856115da2208c90b6c95dbc519f1dcb8db81c8bd3bf6292a7/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f617574682d6c6f67696e2e706e67)](https://camo.githubusercontent.com/1d14b8136cf3f0c856115da2208c90b6c95dbc519f1dcb8db81c8bd3bf6292a7/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f617574682d6c6f67696e2e706e67)

[![User management](https://camo.githubusercontent.com/a2485bde48a38cded0682869f90e6b5a112ebe6dfc88c125603e51e76ac56f2a/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d75736572732e706e67)](https://camo.githubusercontent.com/a2485bde48a38cded0682869f90e6b5a112ebe6dfc88c125603e51e76ac56f2a/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d75736572732e706e67)

[![Roles & permissions](https://camo.githubusercontent.com/578e6961cb209ae391196826869e9e6af9f5769dab6a2cbb2f6d7ead47a4b5f6/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d7065726d697373696f6e732e706e67)](https://camo.githubusercontent.com/578e6961cb209ae391196826869e9e6af9f5769dab6a2cbb2f6d7ead47a4b5f6/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d7065726d697373696f6e732e706e67)

[![File manager](https://camo.githubusercontent.com/bd46b6f57ad4834517e4bb0c18a5531c0289c0fdd4331b6159eab03f6d889ff1/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d66696c652d6d616e616765722e706e67)](https://camo.githubusercontent.com/bd46b6f57ad4834517e4bb0c18a5531c0289c0fdd4331b6159eab03f6d889ff1/68747470733a2f2f737461727465722d6b69742e6c766e74722e6465762f73686f74732f61646d696e2d66696c652d6d616e616765722e706e67)

What is Inside?
---------------

[](#what-is-inside)

- **Authentication**
    - Login / Register / Password Reset
    - Email Verification
    - Two-Factor Authentication (Fortify)
    - OAuth2 API with Laravel Passport
- **User &amp; Access Management**
    - User CRUD with avatar upload and soft deletes
    - Roles &amp; dynamic resource-scoped permissions (Spatie)
    - Session management
- **Admin Modules**
    - Dashboard
    - Activity Logs (browsable, filterable)
    - Settings panel (General / Auth / Mail / Storage / File Manager)
    - File Manager with pluggable contexts and signed share links
    - API Clients &amp; Personal Access Token management
    - System Health dashboard
    - API Routes explorer
    - Definitions (DB-backed enums used across forms and tables)
- **Developer Tooling**
    - DDD-style domain layer (Actions / DTOs / Queries / Events / Listeners)
    - FormBuilder, DatatableBuilder, TabBuilder fluent APIs (including [Translatable Fields](./docs/translatable-fields.md))
    - Domain scaffolding via `make:sk-domain` with opt-in flag support
    - Datatable bulk actions with cross-page selection
    - Safe upgrade flow via `sk:update` (hash-tracked, preserves your edits)
    - System health check via `sk:doctor`
    - Light &amp; Dark themes

How to use it?
--------------

[](#how-to-use-it)

Start from a clean Laravel install:

```
composer create-project laravel/laravel my-app
cd my-app
composer require lvntr/laravel-starter-kit:^13.0
php artisan sk:install
```

That's it. The installer sets up migrations, seeders, Passport keys, a default admin user, and builds the frontend.

Full step-by-step guide: [starter-kit.lvntr.dev/docs/install](https://starter-kit.lvntr.dev/docs/install)

Requirements
------------

[](#requirements)

- PHP 8.4+
- Laravel 13
- Node.js 18+
- MySQL or MariaDB

Compatibility &amp; Versioning
------------------------------

[](#compatibility--versioning)

The package version major aligns with the supported Laravel major. Each Laravel major gets its own maintenance branch and `vN.x.y` tag stream; existing consumer constraints stay locked to their major and never receive breaking changes from a newer Laravel target.

LaravelConstraintBranchStatus13.x`composer require lvntr/laravel-starter-kit:^13.0``13.x`active`main` tracks the currently active major (today: `13.x`). When a future Laravel release is targeted, `main` will move to that next-major dev stream and the previous major's `N.x` branch will continue to receive backports.

Documentation
-------------

[](#documentation)

Everything — installation, update flow, domain scaffolding, FormBuilder / DatatableBuilder / TabBuilder APIs, composables, file manager, roles &amp; permissions, OAuth2 API, activity logs, settings — lives on the official site:

**[starter-kit.lvntr.dev](https://starter-kit.lvntr.dev/)**

- [Upgrading between versions](docs/UPGRADE_.md)
- [Changelog](./CHANGELOG.md)

Commands
--------

[](#commands)

CommandDescription`php artisan sk:install`Full installation: migrations, seeders, Passport keys, admin user, frontend build`php artisan sk:update`Pull updated stubs (hash-tracked, preserves your edits)`php artisan sk:publish [--tag=...]`Publish specific asset groups (components, config, stubs, migrations)`php artisan make:sk-domain Foo`Scaffold a new DDD domain`php artisan sk:doctor`Run system health checks### `sk:doctor` — System Health

[](#skdoctor--system-health)

Runs 12 checks and reports: PHP extensions, database, Redis, Passport keys, storage symlink, writable directories, queue driver, schedule, mail driver, npm build artifacts, config cache, FileManager disk.

```
# Human-readable output
php artisan sk:doctor

# JSON output (CI-friendly)
php artisan sk:doctor --json

# Run only specific checks
php artisan sk:doctor --only=database,redis,passport-keys
```

Exit codes: `0` OK, `1` WARN (non-critical), `2` FAIL (action required).

The `/admin/system-health` admin page runs these checks on demand. Permission required: `system.health.view`.

### `make:sk-domain` — Domain Generator

[](#makesk-domain--domain-generator)

```
# Minimal scaffold (unchanged from previous versions)
php artisan make:sk-domain Post

# Opt-in extras individually
php artisan make:sk-domain Post --with-policy --with-test --with-factory

# Opt-in extras as a comma list
php artisan make:sk-domain Post --with=policy,factory,seeder,test

# With relationship scaffolding
php artisan make:sk-domain Comment --with-relations \
  --relations="belongsTo:Post,morphTo:commentable"
```

Flag reference:

FlagGenerates`--with-policy``PostPolicy` registered in `AuthServiceProvider``--with-factory``PostFactory``--with-seeder``PostSeeder``--with-test`Pest feature test stub`--with-relations`Relation methods in model + migration foreign keys`--with=a,b,c`Shorthand for multiple `--with-*` flags`--relations="..."`Relation definitions (implies `--with-relations`)File Manager
------------

[](#file-manager)

### Signed Share Links

[](#signed-share-links)

Generate time-limited, publicly accessible URLs for private files.

```
# Config keys in config/file-manager.php
file-manager.share.enabled          # true/false
file-manager.share.default_ttl_hours # default: 24
file-manager.share.max_ttl_hours    # default: 720
file-manager.share.allow_revoke     # true/false
```

**Create a share link:**

```
POST /file-manager/share
{ "media_id": 42, "ttl_hours": 48 }

→ { "url": "https://...?expires=...&signature=...", "expires_at": "..." }

```

**Revoke a share link:**

```
POST /file-manager/share/revoke
{ "media_id": 42, "signed_token_hash": "..." }

```

**Access a shared file:**

```
GET /file-manager/share/{media}?expires=...&signature=...

```

Permissions: `share-media`, `revoke-share-media`.

Datatable Bulk Actions
----------------------

[](#datatable-bulk-actions)

`SkDatatable` supports cross-page selection and bulk operations via the `BulkAction` interface and `BulkActionDispatcher`.

**Request payload:**

```
{
  "action": "bulk-delete-users",
  "ids": [1, 2, 3],
  "select_all_filtered": false,
  "filter_snapshot": { "search": "...", "role": "editor" }
}
```

**Response:**

```
{ "processed": 3, "skipped": 0, "failed": 0, "message": "3 users deleted." }
```

When `select_all_filtered: true`, the action receives the filter snapshot and resolves affected records server-side — no client-side ID enumeration required.

Built-in stub examples available via `php artisan sk:publish --tag=starter-kit-stubs`:

- `BulkDeleteUserAction` — rank-aware; prevents self-deletion
- `BulkDeleteRoleAction` — skips system-protected roles

API Clients &amp; Tokens
------------------------

[](#api-clients--tokens)

Admin routes: `/admin/api-clients`, `/admin/api-tokens`.

Supports Passport `authorization_code` and `client_credentials` grants, and Personal Access Tokens.

Permissions:

PermissionScope`api-clients.create`Create OAuth clients`api-clients.read`List / view clients`api-clients.update`Edit client name / redirect URIs`api-clients.delete`Delete clients`api-tokens.create`Mint Personal Access Tokens`api-tokens.read`List tokens`api-tokens.delete`Revoke tokens**Security notes:**

- Client secret and token plaintext are shown exactly once at creation via `OneTimeSecretModal` (cannot be dismissed without copying). Subsequent views show only masked values.
- `redirect_uris` must use HTTPS. `localhost` and `127.0.0.1` are allowed with HTTP (RFC 8252 §8.3). Enforced by `HttpsOrLocalhostUrl` validation rule.
- All clients are created as `confidential = true`. Public (non-confidential) clients cannot be created through the UI.
- Personal Access Tokens are always minted for the currently authenticated admin; `user_id` in the request body is rejected.

License
-------

[](#license)

[PolyForm Noncommercial 1.0.0](./LICENSE)

###  Health Score

46

—

FairBetter than 92% of packages

Maintenance90

Actively maintained with recent releases

Popularity12

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity62

Established project with proven stability

 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

Every ~0 days

Total

82

Last Release

74d ago

Major Versions

v12.0.59 → v13.0.02026-04-05

1.x-dev → v12.0.612026-04-05

v12.0.61 → v13.0.52026-04-07

### Community

Maintainers

![](https://www.gravatar.com/avatar/64ca451a6f47fe8526f3cbd3386ce81f6c63a97d7bb499dad39c29cea9bfb9f4?d=identicon)[lvntrdev](/maintainers/lvntrdev)

---

Top Contributors

[![lvntrdev](https://avatars.githubusercontent.com/u/102551990?v=4)](https://github.com/lvntrdev "lvntrdev (228 commits)")

---

Tags

laravelinertiadddstarter-kitvueadmin-panelprimevue

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/lvntr-starter-kit/health.svg)

```
[![Health](https://phpackages.com/badges/lvntr-starter-kit/health.svg)](https://phpackages.com/packages/lvntr-starter-kit)
```

###  Alternatives

[nasirkhan/laravel-starter

A CMS like modular Laravel starter project.

1.4k2.7k](/packages/nasirkhan-laravel-starter)[erag/laravel-lang-sync-inertia

A powerful Laravel package for syncing and managing language translations across backend and Inertia.js (Vue/React) frontends, offering effortless localization, auto-sync features, and smooth multi-language support for modern Laravel applications.

4821.5k](/packages/erag-laravel-lang-sync-inertia)

PHPackages © 2026

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