carloscolmenarez / navia
A modern Laravel admin panel based on Voyager — refactored, extended, and modernized.
Package info
pkg:composer/carloscolmenarez/navia
Requires
- php: ^8.3
- ext-json: *
- arrilot/laravel-widgets: ^3.15
- illuminate/support: ^12.0|^13.0
- intervention/image: ^3.0
- intervention/image-laravel: ^1.3
- laravel/ui: ^4.6
- league/flysystem: ^3.0
Requires (Dev)
- illuminate/database: ^12.0|^13.0
- laravel/browser-kit-testing: ^7.2.8
- orchestra/testbench: ^10.0|^11.0
- orchestra/testbench-browser-kit: ^10.0|^11.0
- phpunit/phpunit: ^11.5
This package is auto-updated.
Last update: 2026-07-10 13:50:23 UTC
README
A modern Laravel admin panel featuring a role-based BREAD system (browse, read, edit, add and delete), built as an evolution of Voyager.
📋 Requirements
- PHP >= 8.3
- Laravel 12 or 13
⚙️ Installation
1️⃣ Install Navia using Composer
Run the following command from your Laravel project root:
composer require carloscolbe/navia
2️⃣ Add the DB Credentials & APP_URL
Next make sure to create a new database and add your database credentials to your .env file:
DB_HOST=localhost DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secret
You will also want to update your website URL inside of the APP_URL variable inside the .env file:
APP_URL=http://localhost:8000
3️⃣ Run The Installer
Lastly, we can install navia. You can do this either with or without dummy data. The dummy data will include 1 admin account (if no users already exists), 1 demo page, 4 demo posts, 2 categories and 7 settings.
To install Navia without dummy simply run
php artisan navia:install
If you prefer installing it with dummy run
php artisan navia:install --with-dummy
And we're all good to go!
Start up a local development server with php artisan serve And, visit http://localhost:8000/admin.
👽 Creating an Admin User
If you did go ahead with the dummy data, a user should have been created for you with the following login credentials:
email:
admin@admin.compassword:password
NOTE: Please note that a dummy user is only created if there are no current users in your database.
If you did not go with the dummy user, you may wish to assign admin privileges to an existing user. This can easily be done by running this command:
php artisan navia:admin your@email.com
If you did not install the dummy data and you wish to create a new admin user, you can pass the --create flag, like so:
php artisan navia:admin your@email.com --create
And you will be prompted for the user's name and password.
🧾 Notes on this major version
- Database Manager disabled. Creating, altering and dropping tables from the browser is no longer supported (it depended on doctrine/dbal, which Laravel dropped in v11). Browsing tables and the BREAD builder keep working; schema changes must be done through migrations. This mirrors what upstream Voyager 1.8 did.
- Date/time display formats. The
formatoption ofdate/timestampBREAD fields is now interpreted with Carbon'stranslatedFormat()(PHP date tokens, e.g.Y-m-d), sinceformatLocalized()and its strftime tokens (%Y-%m-%d) were removed in Carbon 3. Update existing BREAD configurations accordingly. - Assets are built with Vite (previously laravel-mix).
npm run dev/npm run watch/npm run prodstill work as before, and the compiled output inpublishable/assetskeeps the same file names.
Known dependency debt (accepted)
The admin UI still ships Bootstrap 3, Vue 2 and TinyMCE 6, which carry known advisories with no drop-in fix:
bootstrap3.4.1 — 1 moderate advisory (XSS in data attributes); fix requires Bootstrap 5, a full UI rewrite.vue2.7 /@vitejs/plugin-vue2— low advisories; fix requires Vue 3.tinymce6.8.6 — high XSS advisories; the fixed releases (>= 7.9.3) changed license from MIT to GPL-2.0-or-later, so upgrading is a licensing decision, not just a version bump.
All of these require authenticated admin access to be exploitable.
🙏 Acknowledgements
Navia builds upon the amazing work of the original Voyager package. All credit and appreciation go to the original creators for their contribution to the Laravel ecosystem.