goldnead/statamic-affiliates
Statamic Affiliates is an addon for Statamic CMS that brings affiliate and referral tracking to your site. Manage affiliates, generate referral links, and attribute visits or conversions through a simple control-panel workflow in your Laravel-powered Statamic projects.
Architecture fit. This is a Statamic addon (Laravel-based CMS) that customizes Control Panel navigation. The v0.2.1 change adds a settingsNavParent() contract returning a [section, name] tuple that tells the CP where the addon's settings should live. Architecturally this is a sensible, low-coupling extension point: the addon declares intent, and the host (statamic-brand-context) decides placement. It fits teams that are standardizing CP information architecture across a suite of addons.
Integration feasibility. High. The release explicitly states no migration and no new config key, and the behavior is version-gated on statamic-brand-context >= 1.16. Install is drop-in; older brand-context versions simply ignore the method and preserve the prior layout. This is a well-behaved, backward-compatible enhancement.
Technical risk. Moderate-low, with caveats:
0.x, so the settingsNavParent() signature and tuple shape are not yet a stable public API; expect possible breaking changes before 1.0.[section, name]; the release does not state collision resolution.Key questions.
statamic-brand-context? Does the addon function without brand-context installed?settingsNavParent() declarations resolved across addons?settingsNavParent() documented as a public extension point with a stability guarantee?Stack fit. Laravel + Statamic CP. The feature only matters in environments running statamic-brand-context; without it, or below 1.16, the addon keeps its previous layout. No impact on front-end rendering or data layer.
Migration path. None required. Upgrade the addon via Composer; behavior changes only when brand-context 1.16+ is present. No data migration, no config edits.
Compatibility. Backward compatible by design. Forward path is to upgrade statamic-brand-context to 1.16+ to opt into the new nested settings layout. Mixed-version fleets will show inconsistent CP placement until brand-context is aligned.
Sequencing.
statamic-brand-context version across environments.statamic-brand-context to 1.16+ per environment to activate the new layout.Maintenance. Low day-to-day burden, but the 0.x version signals API churn. Budget for re-review of the settingsNavParent() contract on minor bumps until 1.0.
Support. Two layout behaviors coexist depending on brand-context version. Support runbooks and screenshots should cover both the "Einstellungen" sub-item and the shared "Addon-Suite" page to avoid confusion tickets.
Scaling. The shared "Addon-Suite" page is a consolidation point; as addon count grows, that page can become crowded and harder to navigate. Addons with their own navigation avoid this, so placement strategy should be decided per suite.
Failure modes.
[section, name] may orphan or misplace settings with no loud error.Ramp-up. Low. The change is conceptually simple and self-contained. The main learning curve is understanding the brand-context dependency and the version-gated behavior, which should be captured in a short onboarding note.
How can I help you explore Laravel packages today?