Security by design
Authorization, validation, and safeguards are built into the components you use, helping you avoid common security mistakes as your software grows.
An open-source framework for building polished, maintainable business software with Laravel.
that you won't outgrow
Build screens from components that work together, with the flexibility to make each interface your own.
Tables
Browse and filter records, with custom columns, row actions, and bulk operations.
Forms
Build dynamic forms with reusable inputs, validation, and flexible layouts.
Infolists
Present read‑only records with structured layouts and custom formatting.
Notifications
Keep users informed about saved changes, errors, and background activity.
Dashboard widgets
Show metrics, charts, and recent activity in dashboards tailored to your users.
Action modals
Confirm changes or collect extra details without leaving the current screen.
Filament brings together powerful tools, hundreds of community plugins, and a place to learn alongside other Laravel developers.
Built on
Thoughtfully engineered and actively maintained, so you can focus on building the features your application needs.
Meet Atlas, standing TALL.
Authorization, validation, and safeguards are built into the components you use, helping you avoid common security mistakes as your software grows.
Built-in keyboard navigation, focus management, and screen reader support give more people a familiar, consistent way to use your software.
Consistent conventions give developers and AI agents a familiar way to build and extend your software, even as new screens and requirements are added.
Build on shared components maintained by the Filament community, so your team can focus on its own features and maintain less custom interface code.
Use a declarative syntax that emphasizes clarity and long-term maintainability.
Browse and manage large datasets with configurable columns, filters, row actions, and bulk operations, all defined in PHP.
Build complex forms with reusable inputs that manage state, validation, and dependent fields. Arrange them in flexible layouts.
Present read-only records on detail pages and side panels, with responsive layouts and custom formatting.
Send in-app notifications for user actions and system events, with customizable content and support for Laravel's notification system.
Display metrics, charts, and recent activity in configurable dashboard layouts, with model queries and automatic refreshes.
Define reusable actions for buttons, dropdowns, and bulk selections, with confirmations, modal forms, authorization checks, and immediate or queued execution.
1$table
2 ->columns([
3 TextColumn::make('number')
4 ->sortable(),
5
6 TextColumn::make('user.email')
7 ->label('Customer')
8 ->searchable(),
9
10 IconColumn::make('is_priority')
11 ->boolean(),
12 ])
13 ->filters([
14 SelectFilter::make('status'),
15 ])
16 ->bulkActions([
17 DeleteBulkAction::make(),
18 ]);
1$schema
2 ->components([
3 TextInput::make('title')
4 ->required()
5 ->maxLength(255),
6
7 DateTimePicker::make('published_at'),
8
9 Toggle::make('is_featured')
10 ->live(),
11
12 Textarea::make('featured_description')
13 ->maxLength(500)
14 ->visible(function (Get $get): bool {
15 return $get('is_featured');
16 }),
17 ])
18 ->columns(2);
1$schema
2 ->components([
3 TextEntry::make('email'),
4
5 TextEntry::make('roles.name')
6 ->badge()
7 ->columnSpanFull(),
8
9 Section::make('Verification')
10 ->schema([
11 IconEntry::make('is_verified')
12 ->boolean(),
13
14 TextEntry::make('next_check_at')
15 ->dateTime(),
16 ]),
17 ])
18 ->columns(2);
1Notification::make()
2 ->title('Report generated')
3 ->body('The monthly report is ready to check.')
4 ->icon(Heroicon::DocumentChartBar)
5 ->actions([
6 Action::make('download')
7 ->color('primary')
8 ->icon(Heroicon::ArrowDownTray)
9 ->url(route('reports.download', $report))
10
11 Action::make('view')
12 ->color('gray')
13 ->icon(Heroicon::Eye)
14 ->url(route('reports.view', $report)),
15 ])
16 ->success()
17 ->persistent()
18 ->send();
1$uniqueViews = $service->getUniqueViews();
2
3$totalSales = $service->getTotalSales();
4$totalSalesChange = $service->getTotalSalesChange();
5
6return [
7 Stat::make('Unique views', $uniqueViews)
8 ->icon(Heroicon::Eye),
9
10 Stat::make('Total sales', $totalSales)
11 ->color(($totalSalesChange >= 0)
12 ? 'success'
13 : 'danger')
14 ->descriptionIcon(($totalSalesChange >= 0)
15 ? Heroicon::ArrowTrendingUp
16 : Heroicon::ArrowTrendingDown)
17 ->description(abs($totalSalesChange) . '%'),
18];
1Action::make('archive')
2 ->icon(Heroicon::ArchiveBox)
3 ->requiresConfirmation()
4 ->schema([
5 TextInput::make('reason')
6 ->label('Reason for archiving')
7 ->maxLength(255),
8 ])
9 ->action(function (Post $post, array $data) {
10 $post->archive_reason = $data['reason'];
11 $post->touch('archived_at');
12
13 Notification::make()
14 ->title('Post archived')
15 ->body('It can no longer be edited.')
16 ->success()
17 ->send();
18 });
Our Premium
Filament is proudly open-source. Our sponsors help fund ongoing development, bug fixes, and community support.
Shaped by real-world feedback from developers building and maintaining software with Filament.
Owner of Laravel News
We use Filament to power the backend of Laravel News, and it has been a fantastic fit for our workflow. It lets us move quickly, manage content easily, and build custom admin features with minimal overhead. Filament strikes a great balance between flexibility and developer experience, and it has saved us countless hours while keeping our tools simple and reliable.
President
Wow. We've changed our entire shop to produce nothing but Filament-enabled backend applications. Filament blows any other platform out of the water, and is another reason why the Laravel ecosystem and developers like us continue to ship!
Developer
Filament enabled us to rapidly create complex features, with development taking only weeks instead of months. Being backed by a supportive community was crucial for the delivery of a high-quality product.
CTO of Padmission
Our flagship SaaS product couldn't even exist without Filament. It is the superpower that allows a small company like mine to build world class software in a fraction of the time it takes other companies. Whenever I encounter something that's not already in the framework, the community has almost always solved the problem with a plugin. Whether coding by hand or using AI, everything just makes sense.
Developer & Entrepreneur
I can't imagine creating an application without Filament anymore. It's incredibly easy and swift to use, yet highly adaptable to accommodate your own or your clients' specific requirements.
Co-Founder, Trenda
Filament is a perfect starting point for SaaS startups because it allows to focus on the parts of the application that really make a difference. With Filament we have been able to dramatically reduce our time to market without sacrificing quality.
CTO of Kirschbaum
Filament has become a core part of how we build at Kirschbaum. It's fast to get started with, reliable in production, looks amazing out of the box, and has genuinely helped us ship projects faster without cutting corners on quality. When a client needs a powerful admin panel or sometimes a fully fleshed-out application, Filament is our first reach. It just works!
Director
Filament has been an absolute game-changer for us for web application development with Laravel. It's packed with features and is also highly extensible and modular, allowing us to deliver bespoke experiences to our customers every time.
Developer
I've developed several Filament projects, including a page builder, a SaaS tool, admin panels, and statistics panels. Building aesthetically pleasing and robust solutions is incredibly straightforward. I love working with it.