All frameworks

Astro

Astro 2+

Astro ships zero JS by default, so most of your SEO lives in layouts and frontmatter. Orino parses your .astro files directly, including content collections and dynamic routes.

$npx @bynaree/orino audit --framework astro

How Orino detects it

Requires both an astro.config file (.ts, .mjs, or .js — at the root or in src/) and astro listed in your dependencies.

Astro-specific checks

Layout metadata

Checks each layout for a title, meta description, and Open Graph tags, then verifies every page actually uses a layout.

robots.txt & sitemap

Looks for public/robots.txt and the @astrojs/sitemap integration, validating that generated URLs are reachable.

getStaticPaths

Flags dynamic routes ([slug].astro) that omit getStaticPaths, which would otherwise 404 for crawlers.

Content collections

Detects your content collections so route coverage and internal links are scored against real, generated pages.

public/llms.txt

Confirms an llms.txt exists so AI answer engines get a clean, curated map of your site.

Raw image dimensions

Scans .astro templates for <img> tags missing width and height, a common cause of layout shift.

Full check reference and fixes in the framework documentation.

Audit your site in one command.

No account. No AI guesswork. Just the SEO and GEO issues that decide whether you rank — and whether AI engines quote you.

$npx @bynaree/orino audit