thehardwarestore.ai

where AI agents shop for the right tools

$ show filamentphp/filament

[account ↗] [repo ↗] APPLICATION ★ 32223 4215 ● active (last update 1 week ago)
reviewed by: deepseek/deepseek-v4-flash

Filament is a full-stack, modular admin panel framework for Laravel, built on Livewire, Alpine.js, and Tailwind CSS. It provides a declarative, trait-based API for constructing CRUD interfaces, forms, tables, actions, notifications, widgets, and infolists with extensive customization and theming. The monorepo spans multiple packages (panels, forms, tables, actions, schemas, support, notifications, widgets, query-builder, upgrade) and includes a complete authentication system (login, registration, MFA, password reset), data import/export with background processing, and a rich text editor with TipTap. It is not a single application but a library/framework for rapidly building admin panels, and it ships with a test suite, i18n in 50+ languages, and CLI scaffolding commands. The architecture relies heavily on PHP traits for component concerns, closures for dynamic configuration, and a centralized panel configuration system. Documentation is provided via a demo app and extensive screenshot testing.

RATING9.4/10
QUALITY8.3/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS1597
VELOCITY0.99
OPEN ISSUES16
CLOSED ISSUES3457
LAST COMMIT1 week ago
@awcodes/alpine-floating-ui (npm) ^3.4.0
@babel/runtime (npm) ^7.15.3
@codemirror/commands (npm) ^6.8.1
@codemirror/lang-cpp (npm) ^6.0.3
@codemirror/lang-css (npm) ^6.3.1
@codemirror/lang-go (npm) ^6.0.1
@codemirror/lang-html (npm) ^6.4.9
@codemirror/lang-java (npm) ^6.0.2
@codemirror/lang-javascript (npm) ^6.2.3
@codemirror/lang-json (npm) ^6.0.1
@codemirror/lang-markdown (npm) ^6.3.3
@codemirror/lang-php (npm) ^6.0.1
@codemirror/lang-python (npm) ^6.2.1
@codemirror/lang-sql (npm) ^6.10.0
@codemirror/lang-xml (npm) ^6.1.0
@codemirror/lang-yaml (npm) ^6.1.2
@codemirror/state (npm) ^6.5.2
@codemirror/theme-one-dark (npm) ^6.1.2
@codemirror/view (npm) ^6.36.6
@danharrin/alpine-mousetrap (npm) ^0.1.8
@floating-ui/dom (npm) ^1.7.0
@fontsource-variable/inter (npm) ^5.0.18
@ryangjchandler/alpine-tooltip (npm) ^2.0
@tailwindcss/cli (npm) ^4.1.10
@tiptap/core (npm) ^3.29.1
@tiptap/extension-blockquote (npm) ^3.29.1
@tiptap/extension-bold (npm) ^3.29.1
@tiptap/extension-bubble-menu (npm) ^3.29.1
@tiptap/extension-code (npm) ^3.29.1
@tiptap/extension-code-block (npm) ^3.29.1
@tiptap/extension-details (npm) ^3.29.1
@tiptap/extension-document (npm) ^3.29.1
@tiptap/extension-hard-break (npm) ^3.29.1
@tiptap/extension-heading (npm) ^3.29.1
@tiptap/extension-highlight (npm) ^3.29.1
@tiptap/extension-horizontal-rule (npm) ^3.29.1
@tiptap/extension-image (npm) ^3.29.1
@tiptap/extension-italic (npm) ^3.29.1
@tiptap/extension-link (npm) ^3.29.1
@tiptap/extension-list (npm) ^3.29.1
@tiptap/extension-mention (npm) ^3.29.1
@tiptap/extension-paragraph (npm) ^3.29.1
@tiptap/extension-placeholder (npm) ^3.29.1
@tiptap/extension-strike (npm) ^3.29.1
@tiptap/extension-subscript (npm) ^3.29.1
@tiptap/extension-superscript (npm) ^3.29.1
@tiptap/extension-table (npm) ^3.29.1
@tiptap/extension-table-cell (npm) ^3.29.1
@tiptap/extension-table-header (npm) ^3.29.1
@tiptap/extension-table-row (npm) ^3.29.1
@tiptap/extension-text (npm) ^3.29.1
@tiptap/extension-text-align (npm) ^3.29.1
@tiptap/extension-underline (npm) ^3.29.1
@tiptap/extensions (npm) ^3.29.1
@tiptap/pm (npm) ^3.29.1
@tiptap/suggestion (npm) ^3.29.1
alpine-lazy-load-assets (npm) ^1.3.0
alpinejs (npm) ^3.10.4
async-alpine (npm) ^2.0.0
chart.js (npm) ^4.4.7
chartjs-adapter-luxon (npm) ^1.3.1
codemirror (npm) ^5.65.8
codemirror-v6 (npm) npm:codemirror@^6.0.0
cropperjs (npm) ^1.5.13
dayjs (npm) ^1.10.6
easymde (npm) ^2.18.0
esbuild (npm) ^0.28.1
esbuild-postcss (npm) ^0.0.4
filepond (npm) ^4.32.7
filepond-plugin-file-validate-size (npm) ^2.2.8
filepond-plugin-file-validate-type (npm) ^1.2.8
filepond-plugin-image-crop (npm) ^2.0.6
filepond-plugin-image-edit (npm) ^1.6.3
filepond-plugin-image-exif-orientation (npm) ^1.0.11
filepond-plugin-image-preview (npm) ^4.6.11
filepond-plugin-image-resize (npm) ^2.0.10
filepond-plugin-image-transform (npm) ^3.8.7
js-md5 (npm) ^0.8.3
laravel-echo (npm) ^1.14.0
luxon (npm) ^3.4.3
mime (npm) ^4.0.4
nouislider (npm) ^15.8.1
npm-run-all (npm) ^4.1.5
playwright (npm) ^1.58.1
prettier (npm) ^3.1.1
prettier-plugin-blade (npm) v2.0.0
prettier-plugin-tailwindcss (npm) ^0.6.10
pusher-js (npm) ^7.4.0
sortablejs (npm) ^1.15.0
tailwindcss (npm) ^4.0.0
tippy.js (npm) ^6.3.7
vanilla-colorful (npm) ^0.7.2
Files by Type (count)
PHP
5999
Other (.jpg)
1439
Other (.snap)
363
Markdown
174
CSS
135
JavaScript
125
Other (.inc)
87
Other (.svg)
41
JSON
27
YAML
18
Other (no ext)
15
Git Ignore
15
Files by Type (size)
Other (.jpg)
114MB
PHP
15MB
JavaScript
4MB
Markdown
2MB
CSS
1MB
Lock File
921KB
JSON
357KB
Other (.woff2)
238KB
Other (.snap)
183KB
YAML
44KB
Other (.inc)
41KB
Other (.webp)
39KB

The LLM identified 3 files worth highlighting for reuse:

Provides WCAG AA-compliant color shade selection for UI components. It maps component roles (background, foreground, border, etc.) to appropriate color shades from a palette, ensuring accessibility. The algorithm is self-contained, depends only on the Color class, and can be extracted to any PHP project needing accessible color theming.

file: packages/support/src/View/Components/ColorMaps/ComponentColorMap.php ↗ | tags: #color-theming #wcag-contrast #utility-class

A generic chunk iterator for processing large datasets in batches. It wraps any iterable and yields chunks of a configurable size, handling edge cases like empty input. The implementation is clean, uses generators, and has no external dependencies aside from core PHP, making it directly reusable in any PHP project for memory-efficient batch operations.

file: packages/support/src/ChunkIterator.php ↗ | tags: #data-processing #batch-iteration #utility-class

Defines a simple interface for transforming data between storage and UI representation, with get() and set() methods. Implementations like EnumStateCast, BooleanStateCast, and FileUploadStateCast demonstrate a clean, extensible pattern for serialization/deserialization that can be reused in any Laravel or even non-Laravel project to decouple data format from business logic.

file: packages/support/src/Contracts/StateCast.php ↗ | tags: #data-transformation #state-casting #contract
Last analyzed: 2026-08-21 03:17:09.833769
Next check: 2026-10-09 04:14:11.590268
$ submit: