andrey-helldar/sitemap
A Laravel package for generating XML sitemaps and sitemap indexes with ease. It supports multiple sitemap files, automatic index creation, caching, and flexible configuration, helping search engines discover and crawl your site's pages efficiently.
Architecture fit
thedragoncode/sitemap is a sitemap-generation library for Laravel, providing an XML/TXT/CSV/HTML sitemap builder behind a facade, a service provider, publishable config, and optional routing/controller helpers. It slots into the presentation layer of a standard Laravel application alongside Blade views and the scheduler — no changes to domain code, persistence, or queue topology. Fit is high for content-driven sites (marketing pages, catalogs, CMS output) where SEO indexing is a first-class concern; fit is low if the site is behind heavy auth, is a pure API, or already uses a managed sitemap service.
Integration feasibility
Installation is a single Composer dependency plus config publish, so the mechanical effort is small. The material change in v5.5.0 is the addition of Laravel 9 support (PR #48, first-time contributor). This unblocks projects on Laravel 9 that were previously pinned to older releases of this package or forced onto the abandoned laravelium/sitemap predecessor. Feasibility is conditional on verifying the package's illuminate/* constraints actually permit our exact Laravel 9 minor and our PHP version, rather than trusting the release title.
Technical risk
laravelium/sitemap, and abandoned forks retain security and compatibility debt. Namespaces and config keys differ from the ancestor, which is a common source of migration mistakes.Key questions
illuminate/* and php constraints does 5.5.0 declare, and do they match our runtime?laravelium/sitemap, including namespace and config renames?Stack fit
Assumes Laravel 8/9 with PHP 7.3–8.1 as the practical envelope; Laravel 9 support is the new capability. The package is framework-native (service provider, facade, config, translations/views), so it introduces no second runtime, no daemon, no external datastore. It coexists cleanly with robots.txt management, SEO meta packages, and HTTP caching middleware, provided only one component owns sitemap routes.
Migration path
laravelium/sitemap: treat as a rename-plus-refactor, not a drop-in. Remove the old package, update namespaces and facade aliases, re-publish and diff the config, and re-verify every tag/view override. Budget for the config diff to be the real work.Compatibility
Pin the version explicitly rather than floating on ^5.5, so a future minor cannot silently alter framework constraints. Cross-check for conflicts with any package that also registers a sitemap route or config key. Verify behavior behind load balancers and reverse proxies — base-URL detection is the most common source of wrong-host URLs in generated sitemaps.
Sequencing
robots.txt to point at the sitemap; confirm Content-Type and gzip handling at the edge.Maintenance Ongoing effort is genuinely low — the package has no runtime services and no schema. The real recurring cost is upgrade choreography: every Laravel major will require confirming that a compatible package release exists, and the historical lag suggests planning a window rather than assuming day-one availability. Assign an explicit owner and a calendar reminder ahead of each framework upgrade; also watch for maintainer turnover or archival.
Support Community-only. No SLA, no vendor escalation, no guaranteed response on issues. Acceptable for a non-critical SEO utility that fails safe (a missing sitemap degrades discoverability, it does not take the site down). Unacceptable if sitemap freshness is contractually tied to a business commitment — in that case, fund an internal fork or plan a small in-house generator as a fallback.
Scaling Generation cost scales with URL count and with the number of database queries behind each URL — naive implementations issue per-URL queries and will degrade badly. Mitigate with eager loading, chunked queries, and persistent caching keyed to content-update timestamps. Beyond 50,000 URLs or 50MB uncompressed, a sitemap index is mandatory; confirm the package supports it before committing to a large catalog. Serve static, pre-generated files from the web server or CDN rather than rendering on demand, so crawler traffic never reaches PHP.
Failure modes
http:// URLs.lastmod.Ramp-up
Low. A developer familiar with Laravel can deliver a working, validated sitemap in roughly one to two days, including config, generator, routing, and scheduling. The migration-from-laravelium scenario adds perhaps half a day for namespace and config reconciliation. Total cost of ownership is dominated by the recurring framework-upgrade check-ins, not by initial integration.
How can I help you explore Laravel packages today?