PHPackages                             morcen/omni - 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. morcen/omni

ActiveLibrary[Admin Panels](/categories/admin)

morcen/omni
===========

A modern UI dashboard for selected Laravel Artisan commands

v0.0.1(1mo ago)00[16 issues](https://github.com/morcen/omni/issues)MITBladePHP ^8.3CI passing

Since Mar 21Pushed 1mo agoCompare

[ Source](https://github.com/morcen/omni)[ Packagist](https://packagist.org/packages/morcen/omni)[ Docs](https://github.com/morcen/laravel-omni)[ RSS](/packages/morcen-omni/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (12)Versions (3)Used By (0)

[![Tests](https://github.com/morcen/laravel-omni/actions/workflows/tests.yml/badge.svg)](https://github.com/morcen/laravel-omni/actions/workflows/tests.yml)

Omni | The Artisan UI
=====================

[](#omni--the-artisan-ui)

[![Omni Dashboard](https://camo.githubusercontent.com/c248121df37060a4c458da6ab2dcd2c8cce50cb17699eb553e62b9bc83f09706/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f75633f69643d31546852645059794c4839716e58487875325077476635617975384b2d64375944266578706f72743d76696577)](https://camo.githubusercontent.com/c248121df37060a4c458da6ab2dcd2c8cce50cb17699eb553e62b9bc83f09706/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f75633f69643d31546852645059794c4839716e58487875325077476635617975384b2d64375944266578706f72743d76696577)

Omni is a lightweight in-app dashboard for Laravel applications. It gives you a browser-based view into common application diagnostics and exposes a small set of safe workflow helpers, so you can inspect your app without bouncing between multiple Artisan commands.

At the moment, Omni focuses on:

- An application dashboard with environment, cache, driver, database, migration, schedule, and event insights
- A routes explorer with filtering plus route cache and clear actions
- A `make:model` UI for generating Eloquent models and related files

Some sections are already scaffolded in the UI but are not implemented yet: `Logs`, `Queue`, `Cache`, and `Config`.

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

[](#requirements)

- PHP `^8.3`
- Laravel `^12.0`

Installation
------------

[](#installation)

Install the package with Composer:

```
composer require morcen/laravel-omni
```

The service provider is auto-discovered by Laravel.

If you want to customize the package configuration, publish the config file:

```
php artisan vendor:publish --tag=omni-config
```

What It Does
------------

[](#what-it-does)

Omni adds a protected web UI to your Laravel application, mounted at `/omni` by default.

### Dashboard

[](#dashboard)

The dashboard summarizes useful application state in one place:

- App name, environment, Laravel version, PHP version, URL, locale, timezone, debug mode, and maintenance mode
- Cache status for config, routes, events, and compiled views
- Active database, cache, queue, mail, session, log, and broadcasting drivers
- Database availability, current connection name, and table count
- Route totals and method breakdown
- Migration totals, ran migrations, and pending migrations
- Registered scheduled tasks and their next run time
- Registered events and listener counts

(find screenshot above)

### Routes

[](#routes)

The routes screen provides:

- A searchable table of registered routes
- Filtering by method, name, action, middleware, domain, and path
- Vendor-route filtering
- Buttons to run `route:cache` and `route:clear`

[![Omni Routes](https://camo.githubusercontent.com/c76a3792ab3f4f308908d14736666d418e3da35f9472d548685eaa1415234b7e/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f646f776e6c6f61643f69643d3132775f576c4d4a374a376d707754534173344138544b52545336514b6673785a266578706f72743d76696577)](https://camo.githubusercontent.com/c76a3792ab3f4f308908d14736666d418e3da35f9472d548685eaa1415234b7e/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f646f776e6c6f61643f69643d3132775f576c4d4a374a376d707754534173344138544b52545336514b6673785a266578706f72743d76696577)

### Make

[](#make)

#### Model Generator

[](#model-generator)

The model generator provides a UI for `php artisan make:model` and supports:

- `--all`
- `--controller`
- `--factory`
- `--force`
- `--migration`
- `--morph-pivot`
- `--policy`
- `--seed`
- `--pivot`
- `--resource`
- `--api`
- `--requests`
- `--test`
- `--pest`
- `--phpunit`

[![Omni Make](https://camo.githubusercontent.com/6b5572d9260f3c958c41533262d442aa5097d5be0489379e5a0e3d7f1d0358c9/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f646f776e6c6f61643f69643d317261324b3453544e6d444d724c304a6e6d77684d76494f574532483650674332266578706f72743d76696577)](https://camo.githubusercontent.com/6b5572d9260f3c958c41533262d442aa5097d5be0489379e5a0e3d7f1d0358c9/68747470733a2f2f64726976652e75736572636f6e74656e742e676f6f676c652e636f6d2f646f776e6c6f61643f69643d317261324b3453544e6d444d724c304a6e6d77684d76494f574532483650674332266578706f72743d76696577)

Access Control
--------------

[](#access-control)

Omni is protected by middleware and a Laravel gate named `viewOmni`.

By default, the package defines:

```
Gate::define('viewOmni', function ($user = null) {
    return app()->environment('local');
});
```

That means Omni is available in the local environment out of the box, and denied elsewhere unless you override the gate in your application.

Example override in your app:

```
use Illuminate\Support\Facades\Gate;

Gate::define('viewOmni', function ($user) {
    return $user?->is_admin === true;
});
```

You can also layer your own middleware through configuration, for example:

```
'middleware' => ['web', 'auth'],
```

Configuration
-------------

[](#configuration)

The package ships with `config/omni.php`.

```
return [
    'path' => env('OMNI_PATH', 'omni'),
    'middleware' => ['web'],
    'enabled' => env('OMNI_ENABLED', true),
    'features' => [
        'dashboard' => true,
        'make' => true,
        'routes' => true,
        'logs' => true,
        'queue' => true,
        'cache' => true,
        'config' => true,
    ],
    'routes' => [
        'strip_namespace' => 'App\\Http\\Controllers\\',
        'show_vendor_routes' => true,
    ],
];
```

### Available Options

[](#available-options)

- `path`: URI prefix for the dashboard
- `middleware`: middleware applied to Omni routes before Omni's authorization gate
- `enabled`: master switch for enabling or disabling the package routes
- `features.*`: turn individual UI sections on or off
- `routes.strip_namespace`: removes a namespace prefix from route action display
- `routes.show_vendor_routes`: reserved config for route visibility behavior

Usage
-----

[](#usage)

After installation, start your Laravel app and visit:

```
/omni

```

If you changed the path, use your configured `OMNI_PATH` or `omni.path` value instead.

Contributing
------------

[](#contributing)

Contributions are welcome. If you want to improve Omni, fix a bug, or add one of the placeholder modules, a pull request is appreciated.

### Suggested Workflow

[](#suggested-workflow)

1. Fork the repository.
2. Create a feature branch.
3. Make your changes with tests.
4. Run formatting and the test suite.
5. Open a pull request with a clear summary of the change.

### Local Development

[](#local-development)

Install dependencies:

```
composer install
```

Run the test suite:

```
composer test
```

Run static analysis:

```
composer analyse
```

Format the codebase:

```
composer format
```

Testing
-------

[](#testing)

This package uses:

- Pest for tests
- Orchestra Testbench for package testing
- Larastan / PHPStan for static analysis
- Laravel Pint for formatting

Roadmap
-------

[](#roadmap)

The current UI already includes placeholders for future sections:

- Logs
- Queue
- Cache
- Config

The full project roadmap, including milestone tasks and the release schedule, lives in [ROADMAP.md](ROADMAP.md).

Security
--------

[](#security)

If you discover a security issue, please avoid opening a public issue with exploit details. Reach out privately to the maintainer instead.

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](LICENSE).

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance90

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 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

53d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0d29181937219755d8ae3ceda87a04c1fe93478a4bdcfa347daef6499ec472e9?d=identicon)[morcen](/maintainers/morcen)

---

Top Contributors

[![morcen](https://avatars.githubusercontent.com/u/28680830?v=4)](https://github.com/morcen "morcen (13 commits)")

---

Tags

laravellaravel-artisan-uilaravel-uilaravel-ui-artisanlaravelartisandashboardomnimorcen

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/morcen-omni/health.svg)

```
[![Health](https://phpackages.com/badges/morcen-omni/health.svg)](https://phpackages.com/packages/morcen-omni)
```

###  Alternatives

[guava/filament-knowledge-base

A filament plugin that adds a knowledge base and help to your filament panel(s).

206120.5k1](/packages/guava-filament-knowledge-base)[ralphjsmit/laravel-filament-seo

A package to combine the power of Laravel SEO and Filament Admin.

15398.7k10](/packages/ralphjsmit-laravel-filament-seo)[vormkracht10/laravel-mails

Laravel Mails can collect everything you might want to track about the mails that has been sent by your Laravel app.

24149.7k](/packages/vormkracht10-laravel-mails)[andreia/filament-ui-switcher

Add a modal with options to switch between different UI layouts and styles (colors, fonts, font sizes).

233.8k](/packages/andreia-filament-ui-switcher)[geo-sot/filament-env-editor

Access .env file though Filament admin panel

2432.3k1](/packages/geo-sot-filament-env-editor)[caresome/filament-neobrutalism-theme

A neobrutalism theme for FilamentPHP admin panels

303.2k](/packages/caresome-filament-neobrutalism-theme)

PHPackages © 2026

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