Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Statamic Smartlinks Laravel Package

goldnead/statamic-smartlinks

Statamic addon for smart internal links: reference entries, pages, or URLs with simple syntax and let the addon resolve them into valid links automatically, so content stays intact even when slugs or site structure change.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Smartlink routing and URL structure: v0.2.1 fixes song/release slug collisions by moving releases to /hoeren/release/{slug} while leaving song URLs unchanged. The route segment per collection is configurable via smartlinks.routes.segments, and lookup is scoped to each segment’s collections in config order. This supports decisions about URL taxonomy, SEO structure, and content modeling for songs vs. releases.
  • Dead-link remediation workflow: smartlinks:resolve --replace-dead lets operations re-resolve a platform whose links are all confirmed dead and write the found link into the dead link’s row, preserving other columns, dropping check history, and logging each replacement. suspect/unknown links are left untouched. This supports build-vs-buy decisions around link-health tooling and routine catalog maintenance.
  • Resolution behavior and data hygiene: smartlinks:resolve now counts every stored platform as present, dead or not; without --replace-dead, it no longer appends a second link next to a hidden dead one. This is a product decision about whether dead links remain hidden placeholders or are replaced in place.
  • Use cases: music/release smartlink landing pages, per-collection route segmentation, URL generation in tags and the control panel, and scheduled link-resolution jobs.
  • Roadmap caution: this is a 0.x package and the release changes public release URLs. Treat route/config stability as an adoption risk and plan redirects, analytics updates, and SEO checks before upgrading.

When to Consider This Package

  • Consider it when you are building a Laravel app with song and release collections, slug-based smartlink pages, configurable route segments, and a need for Artisan-driven link resolution and dead-link replacement.
  • It fits when you want package-managed URL builders (landingUrl(), clickUrl(), tags, CP) to follow each entry’s own route rather than hand-building links.
  • Adopt only if you can absorb early-stage 0.x churn and can handle the release URL change from the prior segment to /hoeren/release/{slug} with redirects and analytics/SEO validation.
  • Look elsewhere if you need a stable public API, advanced smartlink features such as geo-routing, A/B testing, consent management, deep analytics, or high-scale CDN delivery, or if you are not on Laravel/PHP.

How to Pitch It (Stakeholders)

  • Executives: This package reduces custom work for smartlink pages and link maintenance. The new --replace-dead workflow lets operations repair dead platform links in place, keep other data intact, and log replacements. The trade-off is maturity: it is still 0.x, and the release URL change requires migration and redirect planning.
  • Engineering: The release adds config-driven route segments to resolve song/release slug collisions, scopes slug lookup by segment and config order, and builds URLs per entry route. The resolver now treats stored platforms as present whether dead or not, avoids duplicate links beside hidden dead entries, and offers opt-in dead-link replacement with history cleanup and logging.
  • Product manager: Prioritize a redirect map and SEO/analytics check before upgrade, validate smartlinks.routes.segments ordering, and schedule link-health runs with --replace-dead where appropriate. The package is a reasonable internal/early-product accelerator, not yet a low-risk platform bet.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
adachsoft/php-code-style