mitydigital/sitemapamic
Sitemapamic is a Laravel package for generating and serving XML sitemaps. Define URLs or Eloquent models, configure priorities and change frequencies, and output sitemap files or indexes to help search engines discover your site's content.
Architecture fit: Sitemapamic is a Statamic addon delivered as a Laravel/PHP Composer package. It fits sites already on Statamic where SEO sitemap generation is otherwise handled by custom templates, third-party SEO addons, or manual routes. The scope is narrow—XML sitemap generation—so architectural coupling is low. It is a poor fit for non-Statamic Laravel applications and should not be treated as a general Laravel sitemap package.
Integration feasibility: Likely feasible for a Statamic team: install via Composer, publish configuration, register/configure the sitemap route, and declare included collections/taxonomies plus exclusions. The main integration work is content-model mapping and route/caching behavior, not deep application changes. Feasibility depends on confirming supported Statamic/Laravel/PHP version ranges and multisite behavior.
Technical risk: Primary risk is ecosystem and maintenance risk, not implementation complexity. Signals include 15 stars, zero dependents, a single-maintainer pattern, and a future-dated last release that warrants verification. The code surface is small, which limits security exposure, but XML escaping, large-site performance, sitemap indexing, and static-cache interactions still need validation. Low adoption means fewer public failure reports and less community validation.
Key questions: Which Statamic, Laravel, and PHP versions are supported? Does it support multisite and per-site sitemaps? How are custom URLs, alternate languages, canonical hosts, and noindex exclusions handled? Does it generate a sitemap index for large content sets? Is output cached, and how does it interact with Statamic static caching or CDN rules? What is the test coverage and maintainer response history? What is the license and upgrade policy?
Stack fit: Use only where the application is Statamic-based and the team already manages Composer dependencies. It complements rather than replaces SEO metadata, redirects, robots.txt, or structured-data tooling. For mixed or non-Statamic estates, standardize on a separate sitemap mechanism.
Migration path: Inventory existing sitemap sources—custom Antlers templates, SEO addons, or hand-written routes. Stand up Sitemapamic alongside the current sitemap on a non-production host, compare URL counts, status codes, lastmod values, exclusions, and XML validity, then cut over /sitemap.xml and remove the legacy path only after parity is confirmed.
Compatibility: Validate the package against the exact Statamic minor version in use, not just the major version. Confirm PHP and Laravel constraints, multisite routing, static caching, queue usage, and any reverse-proxy or CDN rewrite rules. Treat the published release date and low dependent count as reasons to pin the version and test upgrades explicitly.
Sequencing: Start with a time-boxed spike in a staging environment. Configure content types and exclusions, generate a sample sitemap, and measure generation time against production-like content volume. Then add automated validation for XML well-formedness and expected URL coverage. Promote to production behind monitoring, and defer broader adoption until the package proves stable across one or two release cycles.
Maintenance: Ongoing maintenance is likely low in code terms but non-zero in dependency terms. The TPM should assign ownership for Composer updates, Statamic upgrades, and sitemap validation. Pin versions and require a compatibility check before Statamic upgrades. A single-maintainer package with low adoption should have a documented fallback—custom route or template—if maintenance stalls.
Support: Support will come primarily from package documentation and the maintainer, not a large community. Budget for internal troubleshooting and keep a known-good sitemap snapshot for comparison. Escalation paths should not depend on upstream responsiveness for a production-critical SEO surface.
Scaling: Sitemap generation can become expensive on large content sets, especially if generated on every request. Require caching or scheduled generation, and validate memory and response-time behavior at expected URL volumes. For very large sites, confirm sitemap-index support and segment sitemaps by content type or locale.
Failure modes: Watch for invalid XML from unescaped content, stale sitemaps after cache purges, route conflicts, missing multisite entries, incorrect host/protocol URLs, timeouts on large sites, and silent exclusion of content due to configuration drift. Add synthetic checks for HTTP 200, XML validity, URL count thresholds, and expected sample URLs.
Ramp-up: A Statamic developer can likely integrate this quickly; the TPM’s ramp-up is mainly in defining acceptance criteria—URL coverage, exclusions, multisite behavior, cache strategy, and rollback. Treat the package as a tactical utility with a low integration cost but a moderate diligence burden, not as a platform-critical dependency.
How can I help you explore Laravel packages today?