laravel/nova-devtool
Laravel Nova Devtool streamlines Nova component development with a Workbench-based Nova install, optional auto-login, and commands to install common JS deps. Easily enable/disable Vue Devtools in Nova and upgrade from Nova 4 with a generic Mix extension.
composer require --dev laravel/nova-devtool
npm install --save-dev @laravel/nova-devtool
php vendor/bin/testbench nova:devtool setup
composer run serve
(Edit testbench.yaml to set user: nova@laravel.com under workbench for automatic login.)php vendor/bin/testbench nova:devtool enable-vue-devtool
php artisan nova:tool Card
php vendor/bin/testbench nova:devtool install
php vendor/bin/testbench nova:devtool enable-vue-devtool
npm run dev
(Changes reflect instantly in Nova.)Replace require('./nova.mix') in webpack.mix.js with:
mix.extend('nova', new require('laravel-nova-devtool'));
user config to auto-login and test tools:
workbench:
start: /nova
user: nova@laravel.com
php vendor/bin/testbench
composer require laravel/nova:5.7.*
php vendor/bin/testbench nova:devtool install
Vue DevTools Conflicts:
webpack.mix.js includes:
mix.extend('nova', new require('laravel-nova-devtool'));
node_modules and reinstall:
rm -rf node_modules && npm install
Webpack 5 Compatibility:
nova:devtool enable-vue-devtool after upgrading Webpack to 5.10.6+.npm install webpack@5.10.5
Workbench Authentication:
testbench.yaml has the correct user email (must match a registered Nova user).php artisan tinker
>>> \App\Models\User::where('email', 'nova@laravel.com')->first();
tail -f storage/logs/nova.log
npm run dev to catch Mix errors early.Custom Commands:
Extend nova:devtool by publishing a custom command:
// app/Console/Commands/ExtendNovaDevtool.php
public function handle() {
$this->call('nova:devtool', ['--custom' => 'flag']);
}
Tailwind Config:
Override Tailwind in tailwind.config.js:
module.exports = {
presets: [require('laravel-nova-devtool/tailwind')],
// Customize here
};
TypeScript Support:
Generate tsconfig.json:
php vendor/bin/testbench nova:devtool tsconfig
laravel-echo + pusher-js for real-time updates during development.testbench.yaml and webpack.mix.js in a shared repo for team consistency.nova.mix.js with mix.extend('nova', ...) and remove the old file.How can I help you explore Laravel packages today?