Nova, built by the folks over at Laravel, is a “beautifully designed administration panel for Laravel”. Beyond the fancy words and fluff, it is CRUD admin layer built with Vue.js and Tailwind.css that is made to work with your Laravel project almost out of the box. With Nova, you could drop it in, configure a “Nova” for each of your Eloquent models, and you ready to go.

By using Nova, you save a ton of time that would be spent building out a capable admin UI. It can also be extended with tons of useful packages, such as the ability to export to Excel and the ability to create backups.

Nova can be installed either by dropping in a ZIP file or with Composer. From there it’s just an Artisan command – “artisan nova:install”. Then, Nova resources can be created, which link Nova to your models. After that, you can define your fields and your ready to go (you can also set up filters and validation).

Features

The following feature list comes from https://nova.laravel.com/.

Resource Management

Nova provides a full CRUD interface for your Eloquent models. Every type of Eloquent relationship is fully supported. Need to edit the pivot data on your polymorphic many-to-many relationship? We have you covered.

Actions

Actions are PHP tasks that you can run against a resource or batch of resources. Have an action that takes a while? No problem, Nova’s queued actions will keep your administration panel feeling snappy.

Filters

Write custom filters for your resource indexes to offer your users quick glances at different segments of your data. To get you started, we’ve included built-in filters for “soft deleted” resources.

Lenses

Need to customize a resource list a little more than a filter can provide? No problem. Add lenses to your resource to take full control over the entire Eloquent query.

Metrics

Nova makes it painless to quickly display custom metrics for your application, allowing you to generate three types of graphs in seconds. To put the cherry on top, we’ve included query helper.

Custom Tools

Nova offers CLI generators for scaffolding your own custom tools. We’ll give you a Vue component and infinite possibilities. Build the custom tools your business requires, or build the next great Nova add-on and share it with the world.

Authorization

Nova provides a full CRUD interface for your Eloquent models. Every type of Eloquent relationship is fully supported. Need to edit the pivot data on your polymorphic many-to-many relationship? We have you covered.

Custom Fields

Need a field type that isn’t included with Nova? No problem – use the Nova CLI to generate a custom field and take total control over its implementation and design.

Scout Search Integration

Feel the power of the Laravel ecosystem by linking your Nova administration panel with Laravel Scout. Once you do, you’ll get blazing fast search results powered by Algolia and the cloud.

How We Are Using It

Currently we have an internal project that the dev team is bootstrapping that will offer different plugins and extensions for software such as WordPress. As part of this, we rolled our own ordering system and software licensing system. With Nova, we didn’t have to create an admin panel to manage any of the systems, which sped up time of development immensely.

As you can see, we have our “resources” (of our models) in the navigation bar and then an overview of all the data in the model with the ability to add a new item or edit/delete the current one.

Other Things to Consider

First off, Nova isn’t the only player in the field – there is also Laravel Backpack, which has been around longer than Nova and can be cheaper (offers an unlimited use license and free for non-commercial projects). Here is an article comparing the two. One of the major complaints with Nova is that it can be hard to customize and if you trying to go beyond the norm, to either use Backpack or build your own solution.

However if you are trying to launch fast and aren’t doing anything too complicated, Nova is the perfect solution for an admin panel.

Share to

Related Posts

Dive into the Sanity Structure Builder

By: Mark Biek on 6/13/2021

Sanity is the super fast, super customizable CMS that we're using as the backend for the new via.studio website. One of the more powerful concepts that Sanity is the ​Structure Builder which gives you the ability to customize how content is presented in the Sanity admin.

Read More »
Email
Email @ 50: Email Development
Email @ 50: Email Development

By:Nick Stewart on 8/6/2021

Email development has always been the bane of a web developer's existence. You have to use outdated methods and don't have access to the full modern web to create a nice looking email that thousands of people will see. It's like asking a Nascar mechanic to create a car using only tools from the 90s - it can be done but its more than a pain.

Read More »