I have been working on this product on opensource for about 8 months now, and the project has become quite successful. People are actually using it and we are making our goal to make it more developer friendly.
Why, developer friendly?
According to my experience with people who have used our admin panel and its feature to create a module instantly, they are aloof of the details beneath that architecture and are constantly in need of help if anything goes wrong.
If new developers are made to use some super smart software which just creates everything for them, they are just not very aware of the happenings and end up not knowing anything of how the project works. We will get back to this later in the article.
Now, let’s start with the Admin panel.
You can find this Laravel Admin Panel (LAP) here.
Above is how it looks. Cool, isn’t it.
What it Offers?
It offers every module pre-loaded that a typical web project could possibly need.
The list goes on like this:
1. User Management: It gives users management module through which you can easily manage the users in the system.
User Management Page Example
2. Role Management: The users can be differentiated using their roles in the system, and every user will then have to have a role to proceed. And a typical project has many roles in a system through which they differentiate the users and their preferred actions.
3. Permissions Management: The preferred actions of a particular user can be named as the permissions they acquire. The whole system runs on permissions. If a user has a particular permission, he/she is able to perform a single action. With action, I mean (CRUD and other actions), any action that you can think of.
5. Blog Management: Ah, everyone saw this coming, right? Every other website has a blog nowadays. With LAP, you can create blog posts and tags and categories, make it scheduled, make a draft, or directly publish it.
Note: The front-end of the blog has to be created by you and you can use these settings to display your blogs efficiently. Furthermore, it also has SEO fields, so you can configure them on the page when you are displaying the blog on the frontend.
6. FAQs: Every website also has a FAQ section, so we can use this module to create Questions and Answers. I guess this is self-explanatory.
7. Menu Management: This website has a dynamic menu just like WordPress has, you can drag and drop the menu item at any position and create new menu items as you want, with a handy drag and drop functionality you can achieve dynamic menus for your site.
8. Now, the star of the show: Module Boilerplate Generator: The main feature of the LAP is this Module Generator. What this does, is create a full boilerplate for a new module to stand on.
Module Generator Example
With just a few clicks, you can create files namely:
Model, Attribute and Relationship
All of these files will be created for you to work on directly. This module does not support module fields now, hence it just creates an empty migration file.
Now, if you fill up the migration file and have to create the fields in the form file and you will create a new CRUD module in just 5–10 minutes of your valuable time.
We know, creating CRUDs is a tedious task and have to create same files for every new module will be boring and will take a lot of time, and this is just a better way to do it.
The module generator is separated from the LAP and has its own repository, you can find it here.
LAP to the rescue
I always believe there is no magic in code, and everything is written somewhere if you dig a little deeper than all this magic is just some written code by some developer. So, when you have such a product in hand, while it is good to just start building and deliver as fast as you can, it is equally important to know what’s going on under the hood and if you research a little you will find it all in your code.
I hope you like this article and will use the project for your next Laravel application. Do tell me the experience of using the project and if you find any bugs, do point them out in the issues section on GitHub.