Skip to content

Eminence Astro Suite

Eminence Astro Suite exists to generate complete metadata for Astro sites in one place:

  • metadata tags, and
  • metadata-related files.

The workflow is integration first, components second.

The integration is required because it creates a Vite virtual module used by the components at runtime. That lets you define defaults once and keep metadata behavior consistent across the site.

  1. Configure the integration in astro.config.mjs.

    astro.config.mjs
    import { defineConfig } from "astro/config";
    import eminence from "eminence-astro-suite";
    export default defineConfig({
    integrations: [
    eminence({
    // Your project defaults for metadata and generated files.
    }),
    ],
    });
  2. Start with integration-powered defaults and outputs.

    The integration handles these responsibilities for you:

    • Global metadata defaults (for example site name) to keep pages DRY.
    • Icon generation from an SVG source or a 512x512 icon.
    • humans.txt reminder and generation flow.
    • robots.txt generation.
    • security.txt generation.
    • sitemap.xml generation using Astro’s original sitemap integration.
  3. Use metadata components from eminence-astro-suite/components.

    Most projects only need Head.

  4. Begin with title and description, then expand only when needed.

    You can scale from simple pages to advanced metadata by adding JSON-LD, Open Graph, and other supported surfaces over time.

The design is intentionally opinionated:

  • Configure once at integration level.
  • Use one main entry point (Head) for page tags.
  • Expand progressively from basic to advanced metadata.
  • Avoid obsolete tags and outdated metadata surfaces.

This enforces good practices, reduces repeated configuration, and prevents fragmented hand-written metadata.

Beyond page tags, the integration automates key metadata files:

  • icon generation (favicons and manifest-oriented icon sets)
  • humans.txt
  • security.txt
  • robots.txt
  • sitemap.xml (using @astrojs/sitemap under the hood)

Eminence targets relevant, modern SEO/metadata concerns and intentionally avoids obsolete surfaces.

Metadata First-Class

Generate both metadata tags and metadata-related files from one cohesive workflow.

Integration Comes First

Configure integration once so components can read the virtual config module and stay consistent.

Head Is Usually Enough

Use components from eminence-astro-suite/components, but most sites can rely primarily on Head.

Automation Without Repetition

Set global values like site name once and avoid repeating shared metadata page by page.