Skip to content

Releases: Indivar/astro-fleet

v2.2.0 — create-astro-fleet CLI, Keystatic CMS, SEO hardening

Choose a tag to compare

@vairi vairi released this 17 Apr 19:19
d7f9179

Highlights

create-astro-fleet CLI (#8)

Scaffold a new fleet or add a site to an existing one without cloning the repo:

bunx create-astro-fleet              # new fleet, interactive
bunx create-astro-fleet add acme.com saas   # add a site

Two subcommands (init + add), interactive prompts via @clack/prompts, giget-based template fetch, non-interactive flags (--domain, --preset, --template, --keep-demos). Cross-platform — replaces the bash-only new-site.sh for first-time users (the script stays for compatibility).

Keystatic CMS in the Meridian demo (#8)

Meridian now ships a working editable insights content collection with a Keystatic admin UI at /keystatic in dev. Content is Markdoc stored in git; production builds stay fully static. New docs/adding-a-cms.md covers the Meridian pattern, how to replicate it on any other site, the monorepo access-control caveat, and alternatives (Sanity, Directus, Decap, Payload, Tina) with guidance on when each is the right pick.

SEO hardening across the shared layer (#9)

packages/shared-ui/src/components/SEOHead.astro:

  • Emits full robots directives (max-snippet:-1, max-image-preview:large, max-video-preview:-1) on indexable pages
  • Suppresses canonical when noindex=true
  • og:image now includes width/height/alt; only emits when an image is actually provided (no more broken fallback)
  • twitter:card defaults to summary_large_image when an image is present
  • Drops meta keywords emission (prop retained with @deprecated)
  • Declares <link rel="icon" href="/favicon.svg">
  • Auto-emits a linked WebSite + Organization JSON-LD @graph from siteName, Astro.site, logoSrc, and socialLinks (as sameAs). User-supplied structuredData merges into the same graph so @id refs resolve. Opt out per-page with skipAutoJsonLd.
  • New pass-through props on BaseLayout: ogImageAlt, ogType, twitterHandle, noindex, rssUrl, skipAutoJsonLd

Site-level SEO infra (#9)

  • public/_headers on every site: 1-year immutable cache on /_astro/* (covers JS, CSS, and fonts under /_astro/fonts/); No-Vary-Search on / to strip UTM + ad-click params from the CDN cache key
  • RSS feed for Meridian insights at /rss.xml, advertised via <link rel="alternate" type="application/rss+xml">
  • Insight detail pages emit og:type=article

New docs

  • docs/adding-a-cms.md — Keystatic pattern + alternatives
  • docs/seo-recipes.md — optional P2 add-ons (per-page OG images with Satori+Sharp, git-based sitemap lastmod, llms.txt, markdown alternates, IndexNow, FuzzyRedirect, view transitions, schema endpoints, NLWeb, build-time validation)

CI fix

Removed duplicate .github/workflows/build.yml that was running in parallel with ci.yml without setting up Node 22. It always failed (Astro 6 requires Node ≥ 22.12) while ci.yml passed, producing the "fails first, works second" flakiness on every commit.

Breaking changes

None.

Deprecations

  • keywords prop on BaseLayout / SEOHead is accepted but no longer emitted as <meta name="keywords"> — ignored by all major engines. Safe to remove from call sites at your leisure.

Upgrade notes

  • bun install picks up the new create-astro-fleet package and Meridian's Keystatic deps.
  • Auto JSON-LD is on by default. Pages that emit a full custom @graph can opt out with skipAutoJsonLd.
  • Existing call sites passing structuredData continue to work — their nodes now merge into the auto-generated graph (with @context stripped on merge to avoid duplication).
  • _headers ships per-site. First deploy after upgrade will serve the immutable cache headers; no action required on Cloudflare Pages.

What's Changed

  • feat: create-astro-fleet CLI + Keystatic CMS example in Meridian (#8)
  • feat: SEO hardening — P0 meta fixes, auto JSON-LD, _headers, RSS, recipes docs (#9)

Full Changelog: v2.1.0...v2.2.0

v2.1.0 — Framework integrations guide, Node 22 requirement

Choose a tag to compare

@vairi vairi released this 16 Apr 08:17
a67b833

What's Changed

  • docs: add framework integrations guide and Astro capabilities reference by @vairi in #7

Full Changelog: v2.0.0...v2.1.0

v2.0.0 — Astro 6, self-hosted fonts, 22 components

Choose a tag to compare

@vairi vairi released this 16 Apr 05:52
80ae66c

What's Changed

  • chore: add CI badges and promotion drafts by @vairi in #5
  • feat: upgrade to Astro 6 with self-hosted Fonts API by @vairi in #6

Full Changelog: v1.1.0...v2.0.0

v1.1.0 — 22 components, 3 live demos, comprehensive docs

Choose a tag to compare

@vairi vairi released this 16 Apr 03:50
6b6af84

What's Changed

  • chore: add CI workflow and PR template by @vairi in #2
  • feat: add 12 new shared components with full documentation by @vairi in #3
  • feat: comprehensive docs rewrite and integrate components into all demos by @vairi in #4

Full Changelog: v1.0.0...v1.1.0

v1.0.0 - Initial Release

Choose a tag to compare

@vairi vairi released this 15 Apr 18:32
e8164c7

What's Changed

  • feat: add three live demo sites with Cloudflare deployments by @vairi in #1

New Contributors

  • @vairi made their first contribution in #1

Full Changelog: https://github.com/Indivar/astro-fleet/commits/v1.0.0