accelade / infolists
Infolists package for Laravel - Display read-only information with Filament-compatible API
Fund package maintenance!
fadymondy
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Blade
pkg:composer/accelade/infolists
Requires
- php: ^8.3
- accelade/accelade: ^v1.0.0
- accelade/schemas: ^v1.0.0
- illuminate/support: ^11.0|^12.0
- illuminate/view: ^11.0|^12.0
- league/commonmark: ^2.6
- picqer/php-barcode-generator: ^3.0
- simplesoftwareio/simple-qrcode: ^4.2
Requires (Dev)
- laravel/pint: ^1.0
- orchestra/testbench: ^10.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
This package is auto-updated.
Last update: 2026-01-18 14:31:11 UTC
README
Display read-only information with Filament-compatible API
Build beautiful, read-only information displays using a Filament-compatible API. Perfect for detail views, dashboards, and anywhere you need to present data elegantly.
use Accelade\Infolists\Infolist; use Accelade\Infolists\Components\TextEntry; use Accelade\Infolists\Components\ImageEntry; use Accelade\Infolists\Components\BadgeEntry; Infolist::make() ->record($user) ->schema([ ImageEntry::make('avatar')->circular(), TextEntry::make('name')->size('lg')->weight('bold'), TextEntry::make('email')->icon('heroicon-o-envelope'), BadgeEntry::make('status')->color('success'), ]);
Why Accelade Infolists?
- Filament-Compatible API — Familiar fluent interface if you've used Filament
- 15+ Entry Types — Text, images, badges, icons, colors, QR codes, and more
- Standalone Components — Use entries directly in Blade without the Infolist class
- Dark Mode Support — Automatic light/dark theming with CSS variables
- Responsive Layouts — Grid system with column spans and responsive breakpoints
- Lightweight — No heavy dependencies, works with any Laravel app
Quick Start
composer require accelade/infolists
Display user information:
use Accelade\Infolists\Infolist; use Accelade\Infolists\Components\TextEntry; use Accelade\Infolists\Components\ImageEntry; $infolist = Infolist::make() ->record($user) ->columns(2) ->schema([ ImageEntry::make('avatar') ->circular() ->size(80), TextEntry::make('name') ->label('Full Name') ->size('lg') ->weight('bold'), TextEntry::make('email') ->icon('heroicon-o-envelope') ->copyable(), TextEntry::make('created_at') ->label('Member Since') ->dateTime('M j, Y'), ]);
Render in Blade:
<x-infolists::infolist :infolist="$infolist" />
Or use standalone components directly:
<x-infolists::text-entry label="Name" :value="$user->name" /> <x-infolists::badge-entry label="Status" value="Active" color="success" />
Entry Components
Text Entry
Display text with formatting, icons, badges, and more.
TextEntry::make('title') ->label('Article Title') ->size('lg') ->weight('bold') ->color('primary') ->icon('heroicon-o-document') ->copyable(); TextEntry::make('price') ->money('USD'); TextEntry::make('published_at') ->dateTime('M j, Y'); TextEntry::make('tags') ->badge() ->badgeColor('info');
Badge Entry
Display values as styled badges with color mapping.
BadgeEntry::make('status') ->colors([ 'active' => 'success', 'pending' => 'warning', 'inactive' => 'danger', ]);
Image Entry
Display single or multiple images with various styles.
ImageEntry::make('avatar') ->circular() ->size(64); ImageEntry::make('gallery') ->stacked() ->limit(5) ->size(48);
Icon Entry
Display icons with boolean mode support.
IconEntry::make('is_verified') ->boolean() ->trueIcon('heroicon-o-check-circle') ->falseIcon('heroicon-o-x-circle');
Color Entry
Display color swatches.
ColorEntry::make('brand_color') ->copyable();
Rating Entry
Display star or heart ratings.
RatingEntry::make('score') ->max(5) ->icon('heroicon-s-star') ->color('warning');
Progress Entry
Display progress bars.
ProgressEntry::make('completion') ->color('success') ->showValue();
Code Entry
Display code snippets with syntax highlighting.
CodeEntry::make('config') ->language('json') ->copyable();
QR Code Entry
Generate QR codes and barcodes.
QrCodeEntry::make('url') ->size(150); QrCodeEntry::make('sku') ->barcode('CODE128');
Key-Value Entry
Display key-value pairs.
KeyValueEntry::make('metadata');
Repeatable Entry
Display repeated data with nested schemas.
RepeatableEntry::make('comments') ->schema([ TextEntry::make('author'), TextEntry::make('body'), ]) ->grid(2);
Markdown Entry
Render markdown content with GitHub-flavored styling.
MarkdownEntry::make('description') ->collapsible() ->collapsed();
HTML Entry
Display HTML or rendered markdown.
HtmlEntry::make('content') ->prose() ->maxHeight('300px');
Secret Entry
Display masked sensitive data.
SecretEntry::make('api_key') ->revealable();
Separator Entry
Add horizontal dividers.
SeparatorEntry::make();
Layouts
Grid Columns
Infolist::make() ->columns(3) ->schema([ TextEntry::make('name')->columnSpan(2), TextEntry::make('status'), TextEntry::make('bio')->columnSpanFull(), ]);
Responsive Columns
Infolist::make() ->columns([ 'default' => 1, 'sm' => 2, 'lg' => 3, ]) ->schema([...]);
Standalone Blade Components
Use any entry directly in Blade without creating an Infolist:
<x-infolists::text-entry label="Email" :value="$user->email" icon="heroicon-o-envelope" /> <x-infolists::badge-entry label="Status" value="Active" color="success" /> <x-infolists::image-entry label="Avatar" :value="$user->avatar_url" :circular="true" :size="64" /> <x-infolists::rating-entry label="Score" :value="4" :max="5" /> <x-infolists::markdown-entry label="Description" :value="$markdownContent" :collapsible="true" />
Requirements
- PHP 8.2+
- Laravel 11.x or 12.x
- Accelade (core package)
Documentation
| Guide | Description |
|---|---|
| Getting Started | Installation and basic usage |
| Text Entry | Text display with formatting |
| Badge Entry | Styled badge displays |
| Icon Entry | Icon displays with boolean mode |
| Image Entry | Single and multiple images |
| Color Entry | Color swatch displays |
| Rating Entry | Star and heart ratings |
| Progress Entry | Progress bar displays |
| Code Entry | Syntax highlighted code |
| QR Code Entry | QR codes and barcodes |
| Key-Value Entry | Key-value pair displays |
| Repeatable Entry | Repeated data with nested schema |
| Markdown Entry | GitHub-flavored markdown |
| HTML Entry | HTML and prose content |
| Secret Entry | Masked sensitive data |
| Separator Entry | Horizontal dividers |
| API Reference | Complete API documentation |
Credits
Built as part of the Accelade ecosystem, with inspiration from Filament.
License
MIT License. See LICENSE for details.