laravel / nova-devtool
Devtool for Laravel Nova Development
Requires
- php: ^8.1
- composer-runtime-api: ^2.2
- fakerphp/faker: ^1.24
- orchestra/workbench: ^8.15|^9.11
- symfony/polyfill-php83: ^1.31
Requires (Dev)
- larastan/larastan: ^2.4
- laravel/nova: ^5.0
- laravel/pint: ^1.17
- orchestra/pest-plugin-testbench: ^2.0|^3.0
- orchestra/testbench: ^8.30|^9.8
- phpstan/phpstan: ^1.12
- spatie/laravel-ray: ^1.37
Conflicts
- laravel/nova: <5.0.0 || >=6.0.0
README
Installation
You can install the Nova tool via Composer:
composer require --dev laravel/nova-devtool
Once installed, you can run the following to update NPM's package.json
:
npm install --save-dev "vendor/laravel/nova-devtool"
Usages
Setup Laravel Nova Workbench
Laravel Nova Devtool can setup a basic Laravel Nova installation using workbench
directory via Orchestra Workbench. To start the installation you can run the following command:
php vendor/bin/testbench workbench:install --devtool
Once the installation is completed, you should be able to serve Laravel Nova by running the following command:
composer run serve
Automatically logged-in the default user
Instead of manually logging-in the user, you may also change testbench.yaml
to automatically authenticate the user:
workbench:
start: /nova
+ user: nova@laravel.com
build:
Install Axios, Lodash, Tailwind CSS or Vue
To simplify the installation, you can run the following commnad:
php vendor/bin/testbench nova:devtool install
Enables Vue DevTool for Laravel Nova
By default, Laravel Nova ship with JavaScript compiled for production without Vue DevTool. In order to enable Vue DevTool, you need to run the following command:
php vendor/bin/testbench nova:devtool enable-vue-devtool
Disables Vue DevTool for Laravel Nova
To reverse the above action, you need to run the following command:
php vendor/bin/testbench nova:devtool disable-vue-devtool
Ugrading from Nova 4
Nova Devtool ships with a generic nova.mix.js
instead of publishing the file on each 3rd-party components. For external 3rd-party component you just need to include change the following code in webpack.mix.js
:
let mix = require('laravel-mix') -require('./nova.mix') +mix.extend('nova', new require('laravel-nova-devtool')) mix .setPublicPath('dist') // ...
Finally, you can remove the existing nova.mix.js
from the component root directory.