nop-app/filament
Filament integration for nop-app adds admin panel resources and tooling to Laravel projects, making it easy to manage Nop data with configurable forms, tables, filters, and actions. Streamline backend workflows and build polished Filament interfaces.
The package is small and thinly documented, so treat the repository itself as the primary reference.
nop-app/filament was last released in mid‑2022, which places it in the Filament v2 era. Check composer.json in the repo for the exact filament/filament constraint before installing anything, and pin your app accordingly.composer require nop-app/filament
config/app.php or bootstrap/providers.php depending on your Laravel version.php artisan vendor:publish --provider="Nop\Filament\FilamentServiceProvider"
Inspect config/ in the repo to see what tags and config keys are actually available — don't assume.src/ and read the service provider, then any Resources/, Pages/, and Widgets/ directories. That file tree is the documentation.Resource-driven CRUD. The core pattern is Filament Resource classes mapped to Nop Eloquent models. Day to day you'll:
PanelProvider::panel()->resources([...]).Panel registration. If the package ships a panel provider, either use it as-is or copy its configuration into your own provider so you control navigation groups, colors, and middleware. This is the safest way to integrate with an existing Filament panel.
Navigation and grouping. Nop entities typically belong in a dedicated navigation group (e.g. "Content", "Catalog"). Set protected static ?string $navigationGroup and $navigationSort in your subclassed resources to keep the admin tidy.
Authorization. Map Nop's permission/role concepts onto Filament policies. If Nop has its own ACL, write a policy that delegates to it rather than duplicating rules in Filament — otherwise the two systems drift.
Widgets and dashboards. Add stats widgets (counts of Nop entities, recent activity) via ->widgets([...]) on the panel. Keep widgets read-only; avoid heavy queries in dashboard widgets on large Nop datasets.
Settings pages. Nop settings fit naturally as Filament custom pages backed by a settings form. Use a custom Page with a form schema that reads/writes through Nop's settings service rather than a model if settings aren't a normal table.
Media/file handling. If Nop stores media through its own storage layer, override the Filament FileUpload disk and directory config to point at Nop's paths so uploads land where the front end expects them.
Multi-panel setups. If you have separate admin and editor panels, register only the relevant Nop resources per panel to reduce clutter.
composer.json before composer require. Look at its require block for laravel/framework, filament/*, and Nop core constraints. Mismatched constraints are the most likely install failure, and you'll want --with-all-dependencies or explicit version pins.extra.laravel.providers, or a different namespace than expected. If resources don't appear, check php artisan about (providers section) to confirm the provider loaded.canViewAny() / policy authorization — hidden resources are usually a permission issue, not a registration issue.php artisan filament:optimize-clear after config or resource changes.app/Filament tree so a future patch doesn't erase your work — and so the change is reviewable."nop-app/filament": "x.y.z") and add a smoke test that loads each resource index page, so future Laravel/Filament bumps fail loudly instead of silently.How can I help you explore Laravel packages today?