The Laravel team has recently announced the launch of their new product, Nova, an admin panel for you to use on your new and existing Laravel projects.
What is it?
Nova is an admin panel for managing your Laravel application. It’s built by the Laravel team themselves, and is, as they say, inspired by all the things good and bad from what they’ve previously built or used.
Laravel Nova gives you an interface that you can use to manage the CRUD operations for your Laravel application, If your unfamiliar on what CRUD is, it’s simply the “create”, “read”, “update” and “destroy” operations for your eloquent Models you have created in your application.
But it doesn’t stop there… Nova introduces a whole new suite of ways to help you not only maintain and update your data, or run CRUD operations, but also gives you the tools to better understand your data inside your Laravel Application using Metrics, Search and Filters, Lenses, and more. Let’s dive in a little more into what they each do, and how combined they help Nova become one of the best Admin panels you will ever use for your Laravel Applications.
– Metrics: easily create an insight into your data for your admin dashboard, out the box chose from three metric graphs to display your aggregated models information, these can be created in minutes and are really powerful combined to see at a glance.
– Lenses: which allows you to create custom views into your models, you can use these like an advanced filtered view for your list of a resource, the go-to example would be to display a list of users sorted by the “most valuable”.
– Actions: think of these as a chance to perform a custom action or task with a model or bunch of models. They are easy to define and integrate seamlessly across the admin dashboard when looking at the relevant models. You can also define actions that will be added to a Laravel Queue for them pesky long-running tasks or actions.
– CRUD: what Laravel Nova calls Resource Management, is your CRUD system. It is built from the ground up for ease of use and customization to allow you to use Nova with any of your eloquent models. Creating, reading, updating and deleting data in your application is easier than ever, you define new classes that are in a format that Nova can read for your all your eloquent models, however, it’s very flexible, and feels like they’ve thought of many, many edge cases. Support for all types of Eloquent Relationships for your models is in too, yes, even Polymorphic relationships!
– Search: using Laravel Scout allows your models to be searchable with ease inside Nova, you can even use the Global Search ability to perform a search across all your different models, all powered by Algolia to, so the speed of searching is incredibly fast.
Who is it for?
I believe Laravel Nova will be a handy addition to many Apps built with Laravel. Have your own Admin panel that you’ve rolled out? Cool! However, the flexibility and yet deep integration you get with a few installation commands are fantastic, the properly thought out and intuitive interface that they have means using Nova is pretty efficient for all the mundane tasks you may need to do on a day-to-day basis. Things are where you expect them to be, relationships show where you expect them to be, and the actions you can run on them.
Even if you have your own Admin panel, you can install Nova alongside it and it will not affect it at all, allowing you to try out certain features for it, or to take it for a test run switching over to using Nova for your Laravel Admin Panel needs.
Pricing starts from $99 / site at the time of writing, and for all the benefits that Nova brings, built by the official Laravel team, it’ll be frequently updated, a quality codebase behind it (which means easier debugging/exploring or needs be), and the community support behind it will be massive. For this price, it’s a bargain.
You can take a look at the Laravel Nova official website and be sure to signup to the early access newsletter here: https://nova.laravel.com.