darinlarimore/statamic-imagehotspots
Statamic Image Hotspots adds a fieldtype for marking clickable hotspots on images in the control panel and exposing their coordinates and metadata in templates, making it easy to build interactive image maps, product callouts, and tooltips with Statamic assets.
Architecture fit: This is a Statamic addon (composer package) that ships a custom fieldtype for asset containers, registered through Statamic's addon service provider and surfaced in the Control Panel. It sits entirely inside the existing Statamic/Laravel application boundary — no new infrastructure, no separate runtime, no data-store changes. Architecturally it is a thin CP-layer extension, which is the lowest-risk category of Laravel package to adopt.
Integration feasibility: High. The release is a compatibility fix, not a feature or schema change. The core change — resolving whichever of the two asset-container blueprint route names exists rather than hardcoding statamic.cp.blueprints.asset-containers.edit — is a defensive lookup pattern applied at the point of route generation. It requires no config migration, no publish-and-tag step, and no consumer-side code changes.
Technical risk: Low but non-zero:
@statamic/cms npm dependency is a build-hygiene improvement and removes a machine-specific artifact. Verify no downstream asset build (Vite config, published vendor assets) implicitly relied on that package resolving.Key questions:
Stack fit: Native. Requires Laravel + Statamic, installed via Composer, registered as a standard Statamic addon. It consumes Statamic's blueprint/fieldtype APIs and CP routing only — no queue, cache, or database surface. Fits the existing application without introducing a parallel abstraction.
Migration path: Patch-level upgrade (2.2.x → 2.2.1). Standard composer update in a feature branch, then verify the asset-container fieldtype renders and its edit link navigates correctly in the CP. No data migration, no republish of assets expected, though a php artisan vendor:publish --force sanity check on any published config/views is cheap insurance. Rollback is a version pin — the change is small and self-contained.
Compatibility: The fix is explicitly additive in effect: environments below Statamic 5.73 keep working via the old route name, 5.73+ works via the new one, and Statamic 6 is covered. This is the ideal shape for a patch — no floor raised, no ceiling lowered. Confirm the addon's declared composer.json constraints actually permit the Statamic 6 install you intend to run, since release notes and constraint declarations can drift.
Sequencing:
Maintenance: Low ongoing load, with one caveat: the package now carries explicit knowledge of Statamic's CP route names. Every Statamic CP refactor becomes a potential silent breakage in this fieldtype. Budget a small, recurring "verify after Statamic minor upgrade" check rather than assuming set-and-forget.
Support: The package handles its own upstream-compat issue responsively (issue #15 → patched release), which is a positive health signal for a small addon. Bus-factor risk remains typical of single-maintainer community packages — a handful of consumers, likely one primary maintainer. Treat it as community-supported, not vendor-supported, and avoid letting it become load-bearing for a critical editorial workflow without a fallback plan.
Scaling: Effectively irrelevant at scale. This is CP-side blueprint tooling; it does not touch request throughput on the delivery tier. Editorial concurrency is bounded by Statamic's own CP limits, not by this addon.
Failure modes:
Ramp-up: Near zero for developers already working in Statamic; installing the addon and using the fieldtype is a matter of hours, not days. The only real knowledge cost is the version-compatibility surface: whoever owns the upgrade path should know that <5.73, 5.73+, and 6 are three distinct route-name regimes, so that the next "route not defined" error is diagnosed in minutes rather than rediscovered from scratch.
Assessment: 2.2.1 is a low-risk, clearly-scoped compatibility patch that unblocks Statamic 5.73+ and 6. Adopt it. The only strategic note is that it converts an upstream coupling into a maintenance obligation — cheap, but real, and worth tracking against future Statamic minor releases.
How can I help you explore Laravel packages today?