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

Seotools Laravel Package

artesaos/seotools

SEOTools provides Laravel and Lumen helpers for common SEO tasks: setting titles and meta tags, Twitter Cards, Open Graph, and JSON-LD structured data through a simple, friendly interface.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy on SEO plumbing: Instead of engineering a bespoke meta-tag abstraction in every Laravel app, this package delivers a tested, MIT-licensed layer for titles, descriptions, canonicals, Open Graph, Twitter Cards, and JSON-LD. The decision it supports is "standardize on a package, spend the sprint on content and crawl strategy instead."
  • Roadmap acceleration for SEO/social features: Launch-blocking work like shareable link previews (Open Graph/Twitter), rich results (JSON-LD structured data), and duplicate-content hygiene (canonical URLs) can move from "backlog" to "done this sprint" with a controller-level API.
  • Prioritizing templates over pages: Because tags are set per-request in controllers or views, PMs can define a tagging policy (what every page type must expose) and trust engineering to implement it consistently, rather than auditing tags page by page.
  • Use cases it directly enables: marketing landing pages with controlled previews, content/blog/article pages needing article:* and Article schema, product or media pages needing video.*/music.* Open Graph namespaces, multi-schema pages via JsonLdMulti (e.g., Article + WebPage), multilingual sites via og:locale:alternate, and webmaster-tool verification tags via config.
  • Content/SEO team self-service: Config-defined defaults plus per-page overrides mean marketing can influence titles/descriptions through a documented contract without filing engineering tickets for every tweak.
  • Cheap experimentation: The facade API (SEOMeta, OpenGraph, TwitterCard, JsonLd, JsonLdMulti, or unified SEOTools) is low-ceremony, so A/B testing preview copy or schema types is a small-batch change, not an architecture project.

When to Consider This Package

Adopt when:

  • You're on Laravel 5.8+ (or 11+/12) or Lumen and want meta/OG/Twitter/JSON-LD generation without writing it yourself.
  • You need server-rendered tags (SEO-critical, pre-JS crawlers, or non-SPA marketing pages) rather than a client-side solution.
  • You have repeatable page templates (blog, product, article, media) — the per-type Open Graph helpers (setArticle, setVideoMovie, setMusicAlbum, etc.) map cleanly to a tagging policy.
  • You want structured data (JSON-LD, including multiple blocks) for rich-result eligibility with minimal engineering lift.
  • You value MIT licensing and a sizable install base (~3.4k stars) and can live with the package's current release cadence rather than needing a vendor SLA.

Look elsewhere or de-risk when:

  • You need first-class, current documentation and maintainer responsiveness — README is solid but this is a community package; verify issue/PR activity before betting a launch on it.
  • Your SEO surface is large and dynamic enough to warrant a dedicated CMS/headless SEO platform (per-locale hreflang matrices, sitemap orchestration, redirect management, schema validation pipelines) — this package covers head tags, not SEO operations.
  • You're building an SPA/JS-rendered front end with client-side routing — a framework-native head manager (e.g., Vue/React head libraries) may be the better fit for dynamic titles.
  • You need sitemap, robots, redirect, or hreflang tooling — out of scope here.
  • Lumen without facades is your stack: supported, but usage is app('seotools') container calls — plan for that ergonomic difference.
  • Strict compliance review of third-party dependencies is in force — budget time to audit the codebase, license (MIT, fine), and transitive deps.

Adoption checklist the PM should require: pin a version, confirm it works on your Laravel version (provider registration differs on Laravel 11+), publish and review config/seotools.php defaults, define the required-tags-per-template spec, and add a smoke test that rendered pages contain expected tags.

How to Pitch It (Stakeholders)

To executives (one or two lines): "We can ship the SEO and social-sharing foundation — titles, descriptions, canonical URLs, Open Graph, Twitter Cards, and rich-result structured data — in a sprint instead of building it, using a free, widely adopted open-source Laravel package. It's a low-cost, low-risk lever on organic traffic and link-preview quality; the trade-off is dependency on a community project rather than a vendor."

To engineering: "It's a thin, MIT-licensed facade layer over Laravel that gives us a consistent API for head tags and JSON-LD, config-driven defaults, and per-page overrides. Installation is Composer plus a service provider (Laravel 11+ uses bootstrap/providers.php). Facades cover meta, Open Graph, Twitter, and single/multi JSON-LD, with typed helpers for article, book, profile, music, video, and place namespaces. We keep our own tagging spec, publish the config, and add a render test so regressions are caught."

Risks to state plainly: community-maintained (validate maintenance activity and pin versions), scope is head tags only (no sitemaps/redirects/hreflang operations), and SPA architectures may prefer a client-side head manager. Mitigation: pin, test, and isolate usage behind our templates so swapping later is a contained change.

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.
thuraaung2493/laravel-rulecraft
cyberwizard/schedule-catchup
livetennisapi/livetennisapi-laravel
roundly-consulting/notifications-for-laravel
flightsadmin/bootstrap-starter-kit
lasserafn/laravel-intempus
likyly/sdk
tdt/input
coreation/php-shapefile
coreation/gisconverter
primix/widgets
primix/notifications
primix/actions
primix/tables
primix/details
primix/forms
primix/support
marcelgwerder/laravel-api-handler
firebrikdotcom/conveyor-laravel-broadcaster
kanata-php/conveyor-laravel-broadcaster