Are you researching different options to ship an admin panel for your Laravel application? One idea would be to build it from scratch with Laravel. After all, this PHP-based framework facilitates building various products, including internal tools.
Where is the catch, then? Well… You’ll have to engage not only Laravel developers but also UX, Design, and Product. Otherwise, you risk equipping your business teams with inefficient tools and jeopardizing their productivity. Even the founders of Laravel have thought about it and created Laravel Nova with out-of-the-box functionalities like CRUD interface, search, filters, notifications, and more. But is Laravel Nova the only option you have? Not at all. We have tested and compared other admin panel solutions for Laravel to help you make an informed choice.
Before diving in, let’s have a quick look at different types of Laravel admin panels because it is important to differentiate back-end CRUD interfaces from visual builders and admin panel templates.
Thanks to visual UI builders, you can create and manage your admin panel directly from the no-code GUI, typically using drag-and-drop builders. They remind CMS systems but usually, visual admin panel builders offer more functionalities than adding and updating content.
Visual builders are useful when your team is small and there are either no developers who can manage internal tools, or when you want to give non-technical business teams the ownership of the tools they use. However, keep in mind that no-code builders typically have limited customization options.
In the next section, you will find a detailed description of visual builders for Laravel admin panels, such as Voyager and Backpack DevTools.
CRUD operations are the fundament of internal tools. That’s because these days it’s hard to find an application that involves users and/or data that doesn’t interact with a database. Every user that makes an edit to an item in the system, adds a new one or deletes data that is no longer necessary, performs one of the CRUD (create, read, update, delete) operations.
A CRUD interface can be built from scratch, but there are many solutions that gives it out-of-the-box. In the next section, you will learn about the most popular packages for Laravel, such as Laravel Nova, Filament, Backpack, and Quick Admin Panel.
Nova is the official admin panel for Laravel, built by Laravel’s creators. It is powered by Vue.js, Vue Router, and Tailwind.css on the front-end, and configured using simple PHP classes on the back-end, which fits the Laravel ecosystem very well. Its primary features include a full CRUD interface, search and filters, graphs and metrics, authorisation, notifications, conditional fields, and more. Additional functionalities are shipped by the community as open-source packages.
Laravel Nova: Pros
- Laravel Nova has been built and maintained by the Laravel team so it fits the ecosystem, its design and features.
- The UI is clean and user-friendly.
- It fits big enterprise projects.
Laravel Nova: Cons
- Laravel Nova is not available for free. There is no free trial either but you will get reimbursed if you cancel your license in the first 14 days.
- Laravel Nova is not a low code solution. Using it to build internal tools is faster than doing it from scratch but still, it requires some coding and the knowledge of Laravel, PHP, and composer. It also means Laravel Nova can’t be edited and adjusted by non-technical team members.
- The out-of-the-box features are hard to customize.
Unlike other solutions from this article, Filament doesn’t advertise as an admin panel or internal tool solution but as a collection of tools for rapidly building beautiful TALL (tailwindccc, Alpine.js, Laravel, Livewire) stack apps. It has an admin panel, a table builder, and a form builder. The Filament community is also creating packages with complementary features like custom fields, different integrations, charts, and much more.
- Filament is an open-source project with a strong community that keeps building packages and supporting other Filament users.
- It is a clean and simple solution that makes it possible to get an up and running admin panel in a few minutes.
- There is a simple feature for roles but Filament doesn’t allow to setup a more complex system for teams and permissions.
- There is no visual layout editor, which doesn’t allow non-tech team members to customize the tool they use on a daily basis.
Backpack is another popular solution for shipping a Laravel admin panel. It requires a minimal technology stack of Laravel, Bootstrap, and jQuery to customize everything in Backpack. On top of that, it’s possible (but not required) to use Vue, React, Webpack, Mix, Less, Saass, NPM, and more.
Backpack has two core packages: Backpack\CRUD that accelerates the process of building CRUD interfaces, and Backpack\Base responsible for login, password reset, error pages, and so on. However, it is also modular and easy to extend, which makes it a powerful solution, also for complex apps.
Laravel Backpack: Pros
- Backpack gives Laravel developers a lot of customization opportunities, much more compared to Nova and Filament.
- Filters are powerful and can be easily implemented.
- Clear and detailed documentation
Laravel Backpack: Cons
- Backpack is not free for any commercial use.
- Its customization opportunities are a double-edged sword as every change requires quite a lot of manual coding.
Voyager is called the Missing Laravel Admin, probably because unlike Nova, Filament, and Backpack, Voyager is a visual builder that makes it easy to use by junior devs and those with limited coding skills. Voyager has six main features: Media Manager (similar to what we know from WordPress), Menu Builder (allowing to quickly add, edit, and delete menu items), Database Manager (an alternative to Laravel’s Schema), a BREAD/CRUD builder that allows to Browse, Read, Edit, Add, and Delete entries and views of any table in the database, Settings, and Compass that helps with Voyager resources.
Laravel Voyager: Pros
- Easy to start with and use, clear documentation and a strong community.
- It’s free and open source.
Laravel Voyager: Cons
- The UI, which makes it so easy to manage, is also limiting.
- It doesn’t fit complex apps that require setting up role-based permissions, approval workflows, and other less typical features.
Quick Admin Panel is an online internal tool generator for Laravel apps. To get started, you need to sign up on the website, create a project, and add chosen functionalities, such as menus, fields, and relationships. Then, Quick Admin Panel will generate Laravel files that need to be downloaded and installed just like any other Laravel project.
Quick Admin Panel: Pros
- Quick Admin Panel is, as the name suggests, quick. Even the website hints that it’s a good choice for an MVP, a first version of a new Laravel project.
- Quick Admin Panel generates Laravel code and files, and everything can be customized later.
Quick Admin Panel: Cons
- Your needs and models need to be defined upfront, before Quick Admin Panel is generated.
- Further customization requires a lot of manual coding.
Last but not least, Forest Admin has recently gained a new integration, and now it’s also available for Laravel. It takes the best of both worlds: With Forest Admin, you get both a CRUD interface out-of-the box, you are free to add functionalities that fit your specific business scenarios, and finally, it has a UI layout editor for non-technical team members.
Here is what else makes it different from the solutions listed above:
- Forest Admin has a unique hybrid architecture. Only the frontend is managed on Forest Admin servers, so your customer data remain invisible to Forest Admin. It gives you the flexibility of a no-code SaaS tool without compromising on data security.
- Once you install Forest Admin, you get more than 30 features out-of-the-box: CRUD, search and filters, role-based permissions, approval workflows, low code components for chars, etc. Then, you’re free to customize your admin panel by implementing your own actions, visualizing data after applying a specific set of conditions, mirroring your business operations, building virtual relationships between collections, computing data on the go, and more.
- Thanks to an intuitive drag and drop UI editor and recently released Workspaces, Forest Admin can be managed by non-technical team members, who typically use it on a daily basis.
- Forest Admin is scalable, so you don’t need to worry about what happens if you start with an MVP and then celebrate the exponential growth. Forest Admin is used by new startups, established unicorns and all types of companies in between.
As you can see, if you’re not eager to build an admin panel for your Laravel app from scratch, you’re not alone. The Laravel community has already created a couple of user-friendly and efficient solutions, including those that I didn’t mention in this article, like Admin Architect, Argon, InfyOm Laravel Generator, LaraAdmin, Orchid, and many more. The choice is not easy, but answering these questions will help you make the decision:
- Do you have enough resources in development, product, UX, and design in order to build a Laravel admin panel from scratch?
- Do you want non-technical team members take ownership of their tools?
- Do you need to create a quick MVP or do you need an admin panel that will scale from a few to thousands of users?
I hope this article gave you an overview of different ways of building internal tools for your Laravel application. If you decide to give Forest Admin a try, sign up for free and try it yourself.