Zum Inhalt springen

Build-Zeit-Qualität für Astro

Canonical, Headings, Meta-Tags, Open Graph, JSON-LD, Assets und Accessibility – geprüft beim Build, nicht nach dem Deploy.

Build-Zeit Canonical Heading-Hierarchie Meta-Tags Open Graph Accessibility JSON-LD Assets Content-Qualität Sitemap Hreflang Security Externe Links i18n Audit Render Blocking Privacy Baseline Reports HTML-Validierung JS-Bloat Redirects AI Visibility UX Heuristics
npm install -D @casoon/astro-post-audit

Was ist post-audit?

Ein Astro-Plugin, das nach jedem Build automatisch Qualitätsprüfungen auf den generierten HTML-Dateien durchführt. Keine externen Dienste, kein Crawling, kein Runtime-Overhead.

Mehr als 20 Prüfkategorien von Canonical über JSON-LD bis zu Go-Live Gate und AI Visibility – direkt beim Build validiert. Fehler schlagen den Build fehl, bevor sie live gehen.

Wann brauchst du das?

post-audit schließt konkrete Lücken im Entwicklungs-Workflow – für neue Sites und für bestehende.

Automatische Astro SEO- & A11y-Tests im Build

Teams, die mehrmals täglich deployen, brauchen keine manuelle Checkliste für SEO und Barrierefreiheit mehr. post-audit prüft Canonical-Tags, Heading-Strukturen und Alt-Texte bei jedem Build automatisch.

WCAG-Barrierefreiheit (Accessibility) einhalten

Projekte mit gesetzlichen Barrierefreiheitspflichten müssen Heading-Hierarchien, Bild-Alt-Attribute und Skip-Links nachweislich prüfen. post-audit macht diese Checks zum festen Teil der CI/CD-Pipeline.

Mehrere Astro-Websites parallel optimieren

Agenturen und Webentwickler, die zahlreiche Astro-Projekte verwalten, sichern mit einer einheitlichen Konfiguration konsistente SEO-, Performance- und Qualitäts-Standards.

Bestehende Astro-Projekte schrittweise reparieren

Mit der Baseline-Funktion lassen sich bestehende Fehler einfrieren. Der Build schlägt ab dann nur bei neu hinzukommenden Fehlern fehl – ideal für die schrittweise Optimierung.

Integration in zwei Minuten

astro.config.mjs
 import postAudit from '@casoon/astro-post-audit';

export default defineConfig({
  site: 'https://example.com',
  integrations: [
    postAudit({
      preset: 'standard',
      failOn: 'errors',
      hints: { sourceFiles: true },
      rules: {
        filters: { exclude: ['404.html'] },
        headings: { no_skip: true },
      },
    }),
  ],
}); 

Kein separater CI-Step. Kein externer Dienst. Läuft direkt nach astro build.

Was wird geprüft?

Jede Kategorie adressiert Fehler, die sonst erst nach dem Deploy auffallen.

Canonical & URL-Normalisierung

Self-reference, Cluster-Erkennung (mehrere Seiten mit gleicher Canonical), same-origin und Trailing-Slash-Konsistenz.

Heading-Hierarchie

H1 vorhanden, nur einmal pro Seite, keine Sprünge (H2 → H4). Verstöße gegen WCAG werden als Build-Fehler markiert.

HTML-Grundlagen

Title, Meta-Description, html[lang], Viewport. Längen-Limits konfigurierbar. Fehlt eine Pflichtangabe, schlägt der Build fehl.

Open Graph & Social

og:title, og:description, og:image und twitter:card auf Vollständigkeit prüfen. Unvollständige Tags führen zu schlechten Social-Previews.

Accessibility

img alt, Link- und Button-Namen, Formular-Labels, ARIA-hidden auf fokussierbaren Elementen, generische Link-Texte, Skip-Link. Seit v0.3.0 per Default: Landmark-Struktur (`<main>` Pflicht), doppelte IDs und ungültige ARIA-Rollen.

Interne Links & Fragmente

Kaputte interne Links, Query-Parameter in internen URLs, Fragment-Validierung (#section gegen existierende IDs), Orphan-Seiten.

Structured Data (JSON-LD)

JSON-LD-Syntax und Semantik validieren, doppelte @type-Einträge erkennen, cross-page Konsistenz von @id und Entitäts-URLs prüfen.

Assets & Content-Qualität

Fehlende Bild- und Script-Referenzen, fehlende width/height (CLS), doppelte Titles, Descriptions und H1-Texte site-weit.

Hreflang & I18n

Hreflang-Links auf Vollständigkeit und Gegenseitigkeit prüfen, x-default verlangen, locale-route / lang / canonical-Konsistenz seitenübergreifend validieren.

Security & Privacy

target="_blank" ohne rel="noopener", Mixed Content, Inline-Scripts. Dazu: Third-Party-Domains, fehlende SRI-Hashes, CSP-Readiness und Consent-Indikatoren.

HTML-Validierung

Native HTML5-Syntaxfehler per html5ever-Tokenizer offline validieren – kein externer Dienst, kein Browser. Fehleranzahl pro Seite konfigurierbar.

JS-Bloat & Redirects

Warnt wenn lokales Client-JS pro Route ein konfigurierbares Limit überschreitet. Meta-Refresh-Redirects, Weiterleitungsketten und -loops werden statisch erkannt.

AI Visibility & UX

AI-Visibility-Score: statische Signale für Zitierwahrscheinlichkeit durch KI-Suchen (Perplexity, ChatGPT Search). UX-Heuristiken: CTA-Klarheit, Trust-Signale, Cognitive Load.

Render Blocking & Crawl Budget

Synchrone Skripte im Head, fehlende preload/preconnect-Hints für kritische Ressourcen. URL-Varianten, noindex-Konflikte und Duplicate-Cluster, die das Crawl-Budget belasten.

Go-Live Gate

Production-Readiness-Gate für CI/CD: noindex auf Live-Seiten, falsche Origins in Canonical, Sitemap und OG-Tags, verbotene Domains (z.B. staging.example.com). Läuft nur wenn `goLive.enabled: true`.

Mehr als nur Checks

Baseline, Presets und Reports machen post-audit auch für bestehende Sites und CI/CD-Pipelines tauglich.

Schnellstart

Presets

`standard`, `seo`, `accessibility`, `performance`, `strict`, `production` oder `relaxed` – passgenaue Ausgangspunkte für jeden Use-Case. Individuelle `rules` überschreiben den Preset.

Brownfield-Sites

Baseline

Bestehende Findings einfrieren mit `writeBaseline`. Danach schlägt der Build nur bei *neuen* Problemen fehl.

CI/CD

Report-Dateien

JSON, Markdown und SARIF gleichzeitig ausgeben. SARIF wird direkt von GitHub Code Scanning als PR-Annotation eingelesen.

Debugging

Source Hints

`hints.sourceFiles: true` zeigt neben dem dist/-Pfad auch den wahrscheinlichen Quellpfad – z.B. `src/content/blog/post.mdx`.

AI-Suche

AI Visibility

Prüft statische Signale – Wortanzahl, Schema-Markup, OG-Tags, semantisches HTML – die beeinflussen, wie KI-Suchsysteme eine Seite zitieren.

Conversion

UX Heuristics

Bewertet CTA-Klarheit, Trust-Signale und Cognitive Load (max. Links pro Seite, min. CTAs). Als Warnung oder harter Fehler konfigurierbar.

Warum post-audit?

SEO- und Accessibility-Fehler kosten Zeit, Ranking und Vertrauen – wenn sie erst nach dem Deploy entdeckt werden.

Kein Runtime-Overhead

Alle Prüfungen laufen beim Build. Im Browser landet kein zusätzlicher Code.

Fail-Fast

Fehler werden beim Build gemeldet, nicht nach dem Deploy. Kein Tool-Ping, kein Crawling nötig.

Astro-nativ

Integration direkt in astro.config.mjs. Kein separater CI-Step, kein externer Service.

MIT-Lizenz

Open Source, kostenlos, keine Abhängigkeit von externen APIs oder Accounts.

Im CASOON-Ökosystem

post-audit ist Teil einer Werkzeugkette aus Open-Source-Plugins – alle MIT-lizenziert, alle auf Astro ausgerichtet.

Site-Dateien

@casoon/astro-site-files

Erzeugt robots.txt, sitemap.xml mit i18n-hreflang, llms.txt und security.txt beim Build.

Security

@casoon/nosecrets

Verhindert, dass API-Keys und Tokens ins Repository gelangen – Pre-commit-Hook und manueller Scan.

Structured Data

@casoon/astro-structured-data

Schema.org-Komponenten für Astro: Article, FAQ, Product, Breadcrumb, LocalBusiness und mehr. Typsicher mit schema-dts.

Performance

@casoon/astro-speed-measure

Misst Build-Performance auf Ebene von Integrations, Vite-Plugins und Pages. Trend-Vergleiche und CI-Summaries.

Starter

astro-v6-template

Monorepo-Starter mit allen vier CASOON-Plugins fertig konfiguriert. Cloudflare Workers, i18n, Playwright.

Ergänzend: Live-Audits mit auditmysite

post-audit prüft beim Build – statisch, schnell, ohne Browser. Für vollständige Accessibility-, Performance-, SEO- und Security-Analysen auf der laufenden Website empfiehlt sich auditmysite: ein CLI-Tool, das über das Chrome DevTools Protocol echte Browser-Signale auswertet.

Häufige Fragen

Wie hilft post-audit bei der Astro SEO-Optimierung?

post-audit analysiert das generierte HTML direkt beim Build. Es prüft SEO-relevante Faktoren wie Canonical-URLs, fehlende oder doppelte Meta-Tags, Open Graph Social Previews, korrekte Hreflang-Attribute und die syntaktische Korrektheit von JSON-LD-Schema-Markups.

Welche Barrierefreiheits-Checks (A11y) führt das Astro-Plugin durch?

Das Plugin prüft WCAG-relevante Kriterien wie fehlende alt-Attribute bei Bildern, aussagekräftige Link- und Button-Namen, Landmark-Strukturen (z. B. Vorhandensein von <main>), doppelte IDs und gültige ARIA-Rollen.

Wie unterscheidet sich post-audit von einem klassischen SEO-Crawler wie auditmysite?

post-audit läuft lokal und extrem schnell direkt während des Astro Builds, ohne einen echten Browser zu starten. Es verhindert Fehler, bevor sie hochgeladen werden. auditmysite prüft die bereits live geschaltete Website über einen echten, headless Chrome-Browser auf CSS/JS-Rendering, Ladezeiten und visuelle Stabilität.

Kann ich bestimmte SEO- oder A11y-Checks im Plugin deaktivieren?

Ja. Im rules-Objekt der Konfiguration in der astro.config.mjs lassen sich einzelne Prüfkategorien deaktivieren oder die Severity für spezifische Regel-IDs im severity-Objekt auf "off" oder "warning" setzen.

Wie gehe ich mit Fehlern auf einer bereits bestehenden Website um?

Aktiviere writeBaseline: true. post-audit speichert alle aktuellen Warnungen und Fehler in einer Baseline-Datei. Bei zukünftigen Builds werden diese bekannten Findings ignoriert und nur neue Probleme blockieren den Build.

Ist das Astro SEO-Plugin kostenlos?

Ja. @casoon/astro-post-audit ist unter der MIT-Lizenz veröffentlicht und vollständig Open Source. Es fallen keine Lizenzgebühren, API-Kosten oder Account-Zwänge an.

Im Insights-Blog

astro-post-audit: SEO- und Accessibility-Checks direkt nach dem Build

Wie das Plugin in Astro-Projekte integriert wird und welche Fehler es verhindert – mit konkreten Beispielen aus der Praxis.