How to Create a Sidebar and Simple CRUD in Laravel Filament v3 (Step-by-Step Guide)
Are you tired of building admin panels from scratch? Want to create a powerful Laravel dashboard with built-in CRUD, sidebar navigation, dark mode, and more — all in minutes?
In this comprehensive tutorial, you’ll learn how to create a sidebar and a simple CRUD system using Laravel Filament v3, the most modern admin panel for Laravel. This guide is beginner-friendly and SEO-rich — perfect for developers, freelancers, agencies, and startups.
🌟 What is Laravel Filament?
Filament is a beautiful TALL stack (Tailwind CSS, Alpine.js, Laravel, Livewire) admin panel for Laravel applications. With Filament, you can quickly create CRUD operations, custom pages, forms, tables, dashboards, user permissions, and more — without writing tons of boilerplate code.
Why developers love Filament v3:
- Fast setup
- Customizable UI with Tailwind
- Supports Laravel 10+
- Easy form & table building
- Clean sidebar navigation
- Livewire-powered interactivity
🚀 Prerequisites
Before you begin, make sure you have:
- Laravel 10+ installed
- Composer installed
- MySQL or SQLite database configured
- Node.js and NPM (optional for compiling assets)
- At least one
User
in yourusers
table
📦 Step 1: Install Laravel Filament v3
If you're starting fresh, create a Laravel project:
Now install Filament:
Then publish Filament's assets and panel:
It will ask for the admin panel path (you can press Enter to accept /admin
).
Create a super admin user:
Enter the name, email, and password.
Now you can log in at:
🎉 You now have a clean admin panel with authentication, sidebar, and dark mode support.
🧱 Step 2: Create the Model and Migration
We’ll create a simple Project
CRUD.
Run:
Edit the generated migration:
Run the migration:
🛠️ Step 3: Generate the Filament Resource (CRUD)
Now generate the CRUD automatically with:
This will generate:
ProjectResource.php
CreateProject.php
EditProject.php
ListProjects.php
- Navigation entry (automatically added to sidebar)
Now visit:
You’ll see the table, “Create Project” button, and default form.
🎨 Step 4: Customize the Form and Table
Open app/Filament/Resources/ProjectResource.php
.
Customize the form:
Customize the table:
🧭 Step 5: Customize Sidebar Group and Icon
You can change where the resource appears in the sidebar.
Now your CRUD appears under a collapsible group in the sidebar.
✨ Optional Enhancements
✅ Bulk Actions
You can allow bulk deletes:
🖼️ Custom Dashboard Widgets
Want custom widgets like stats, charts, or cards on the dashboard?
Run:
Then customize the widget layout in ProjectStats.php
.
🧠 SEO Benefits of Using Filament
- Fast admin dashboard creation – build complete panels in minutes
- Optimized UI – responsive, accessible, and fast-loading
- Developer-focused – use Laravel concepts (Eloquent, policies, routes)
- Extendable – integrate with 3rd party tools like Spatie Roles, Inertia, etc.
- Tailwind-powered – easily match your design system
🧪 Testing Your CRUD
Run the server:
Then go to:
Your create page will looks like something below
Edit Page Looks like the below One
On the click of delete, you see the popup message like the one below
Log in and navigate to the Projects page. You can now:
- Create, edit, delete projects
- See all entries in a sortable, searchable table
- Enjoy sidebar navigation and dark mode
🔐 Securing Filament with Policies
To restrict access, generate a policy:
Then register it in AuthServiceProvider.php
and use Filament’s can()
methods in your resource.
📌 Final Thoughts
Laravel Filament v3 is the go-to admin panel solution for modern Laravel apps. With this guide, you’ve learned:
- How to set up Filament from scratch
- Create a simple CRUD for a
Project
model - Customize the sidebar, form, and table
- Enhance usability with sidebar groups and UI tweaks
You now have a solid foundation for building admin panels, CRMs, dashboards, CMS platforms, and more — without the bloat.