fsi/admin-gallery-bundle
FSI Admin Gallery Bundle adds a ready-to-use gallery management interface to Symfony admin panels, with image uploads, gallery organization, sorting and backend integration. It helps PHP applications add photo galleries with minimal configuration and extendable admin tooling.
Architecture fit — critical mismatch. Despite being catalogued as a "Laravel/PHP package," fsi/admin-gallery-bundle is a Symfony bundle, not Laravel. It is explicitly described as "FSiAdminBundle configuration for fsi/gallery-bundle" — meaning it contains no gallery domain logic itself. It is glue code that registers the gallery entities from fsi/gallery-bundle into the FSiAdminBundle admin-panel generator (FSi's Symfony-based CRUD/admin framework). Its architectural role is a configuration shim: admin routes, list/form definitions, and datasource wiring. For a Laravel codebase there is no autoloading, service-container, or routing compatibility — it cannot be installed as a Laravel package in any meaningful sense.
Integration feasibility — effectively zero for Laravel. Even on Symfony, using this bundle requires the full FSiAdminBundle stack (AdminBundle, DataSourceBundle, ResourceBundle, and their transitive dependencies), all of which target the Symfony 2.x/3.x era. On a Laravel target there is no bridge, adapter, or port. The realistic integration work is not "install and configure" but "reimplement the admin CRUD surface for galleries."
Technical risk — high and non-mitigable. Signals are uniformly negative: 0 stars, 0 dependents, last release 2015-03-10 (roughly a decade stale), score 0.09. A 2015 Symfony bundle will carry Composer constraints around PHP 5.x/7.0 and Symfony 2.x that will fail to resolve against any modern PHP 8.x runtime. There is no security patch path, no maintainer activity, and no downstream cohort to validate against. The functional surface is small, which caps damage — but it also means there is little value to preserve.
Key questions for the requesting team:
fsi/gallery-bundle-shaped (Doctrine entities) or already relational/JSON in the target app?Stack fit — recommend against adoption. For a Laravel stack, the correct posture is to treat this package as a domain reference, not a dependency. Read the bundle's admin configuration to understand the expected gallery data shape (albums, photos, ordering, file references), then implement that shape natively. The closest idiomatic Laravel equivalents are spatie/laravel-medialibrary for media handling plus an admin layer such as Filament, Nova, or a custom resource controller. That combination is actively maintained, PHP 8.x-compatible, and covered by an existing support community — all things this package lacks.
Migration path — rebuild, don't port. The bundle contains configuration, not logic, so there is nothing worth porting line-by-line. The migration is a short greenfield build: define albums and gallery_items tables (or use medialibrary's media table), expose CRUD routes in the chosen admin panel, and wire file storage to Laravel's filesystem abstraction. Scope is measured in days, not weeks, and the output is maintainable by the existing team.
Compatibility — hard blockers. Expect Composer to reject installation outright on modern PHP due to platform requirements, and expect transitive FSi dependencies to pull in abandoned Symfony 2 components. Do not attempt to force-install with --ignore-platform-reqs; that trades a clean failure for a runtime failure in production.
Sequencing (if leadership insists on evaluating FSi reuse):
Maintenance — unowned. No releases since 2015, no visible maintainer activity, 0 stars. Any defect found in production becomes the team's to fix in vendored third-party code, with no upstream to petition. This is the dominant operational cost and it is permanent.
Support — no safety net. Zero dependents means zero field evidence: no known-issue corpus, no community answers, no forks with fixes. Onboarding a new engineer to an abandoned FSiAdminBundle stack requires reverse-engineering documentation that likely no longer exists online.
Scaling — not the binding constraint. Admin-panel CRUD for galleries is low-throughput; the real scaling concerns (image storage, thumbnail generation, CDN delivery, upload concurrency) are handled by the storage and queue layers, not by this bundle. Adopting or rejecting this package does not materially change scalability either way.
Failure modes to plan for:
composer update — a blocker that can freeze the whole dependency graph.fsi/gallery-bundle schema with no test coverage to catch it.Ramp-up — deceptive. The bundle itself is small and quick to read. The surrounding FSiAdminBundle paradigm (datasources, admin classes, resource abstractions) is idiosyncratic and undocumented for new hires, so effective ramp-up is measured against the whole legacy stack, not this package. By contrast, a Laravel-native build ramps against tools the team already knows or can hire for trivially.
Recommendation: Do not integrate. Treat as a data-model reference only, and fund a small native Laravel gallery/admin implementation instead.
How can I help you explore Laravel packages today?