Contact Us

Requirements

Browse all project requirements grouped by classification.

Filtered by:

Showing of requirement(s). 272 requirement(s) available.

Functional

REQ-00001 normative functional required

The theme shall support small business informational websites as a primary use case.

REQ-00002 normative functional required

The theme shall support multi-service business websites.

REQ-00003 normative functional required

The theme shall support multi-location / multi-site business websites.

REQ-00004 normative functional required

The theme shall support content-driven marketing or editorial websites.

REQ-00007 normative functional required

Static Site Generation (SSG) shall be the default rendering strategy.

REQ-00008 normative functional required

The theme shall support hybrid rendering patterns.

REQ-00009 normative functional required

Hybrid rendering shall support dynamic behaviors including search, filtering, pagination, sorting, and forms requiring runtime logic.

REQ-00012 normative functional required

Theme switching shall be supported at runtime.

REQ-00013 implemented functional required

Theme switching shall persist user preference across sessions.

REQ-00015 implemented functional required

A theme control component shall support Light, Dark, and System modes.

REQ-00017 implemented functional required

Dark mode selection shall resolve using persisted preference followed by system preference.

REQ-00018 implemented functional required

Search, filtering, sorting, and pagination behaviors shall be supported.

REQ-00019 implemented functional required

Dynamic views shall provide standardized empty-state behavior.

REQ-00022 implemented functional recommended

View transitions shall be supported for full page navigation.

REQ-00026 deprecated functional required

Dark mode shall be supported at runtime.

REQ-00043 implemented functional required

The theme shall include foundational UI primitives.

REQ-00044 implemented functional required

The theme shall include a limited set of composite components.

REQ-00048 implemented functional required

A Breadcrumbs component shall be provided.

REQ-00049 implemented functional recommended

An Image Lightbox component shall be provided.

REQ-00051 implemented functional required

The SiteLogo component shall render an SVG logo (preferred), PNG logo (fallback), or site title text (final fallback) based on what is configured in src/config/site.ts, with no props required for default behavior.

REQ-00052 implemented functional required

Button components shall support defined visual variations.

REQ-00054 normative functional required

Modal and overlay components shall define scroll locking behavior while active.

REQ-00055 implemented functional optional

A Back to Top control shall be provided.

REQ-00056 implemented functional optional

The Back to Top control shall be optionally enabled or disabled.

REQ-00057 implemented functional optional

The Back to Top control shall support independent enablement for desktop and mobile contexts.

REQ-00059 normative functional required

Markdown and/or MDX authoring shall be supported.

REQ-00061 implemented functional required

Draft content states shall be supported.

REQ-00065 implemented functional optional

Estimated reading time shall be supported.

REQ-00066 implemented functional optional

Table of contents generation shall be supported.

REQ-00067 implemented functional optional

Modified time shall be supported.

REQ-00069 implemented functional required

Primary category taxonomy shall be supported.

REQ-00070 implemented functional required

Tags taxonomy shall be supported.

REQ-00071 implemented functional required

Category and tag listings shall support pagination by default.

REQ-00072 implemented functional optional

Infinite loading shall be optionally supported.

REQ-00073 implemented functional required

Standardized empty-state UI patterns shall be defined.

REQ-00076 normative functional required

Images shall be optimized automatically.

REQ-00077 normative functional required

Art-directed image support shall be provided.

REQ-00078 rejected functional required

Responsive image components shall be provided.

REQ-00080 implemented functional required

Missing images shall degrade gracefully.

REQ-00082 implemented functional required

A skip-to-content link shall be provided.

REQ-00086 implemented functional required

Forms shall display visible validation and error messaging.

REQ-00091 implemented functional required

Canonical URLs shall be generated automatically.

REQ-00092 implemented functional recommended

Generated URLs shall be overridable.

REQ-00093 implemented functional required

Sitemap generation shall be supported.

REQ-00094 implemented functional optional

Content shall be able to exclude itself from sitemap outputs.

REQ-00095 deprecated functional optional

Twitter Card metadata shall be supported.

REQ-00096 deprecated functional optional

Open Graph metadata shall be supported.

REQ-00097 implemented functional optional

Robots.txt generation shall be supported.

REQ-00098 implemented functional optional

Web Manifest support shall be provided.

REQ-00100 implemented functional optional

Analytics and tracking scripts shall be blocked until consent.

REQ-00101 implemented functional optional

A cookie consent mechanism shall be provided.

REQ-00102 implemented functional optional

Consent states shall support Accept, Reject, and Required Only.

REQ-00110 implemented functional required

Compiled documentation shall be provided by default, disableable via site configuration.

REQ-00113 implemented functional required

A requirements index page shall be provided when the theme-docs system is enabled.

REQ-00114 implemented functional required

Per-requirement detail pages shall be system-generated when the theme-docs system is enabled.

REQ-00115 implemented functional required

Requirements discovery views shall support filtering with shareable URL state.

REQ-00134 implemented functional required

Local font loading shall be supported.

REQ-00145 implemented functional required

In production-aligned outputs (build/preview/deployed), requests for URLs missing the required trailing slash shall automatically redirect to the trailing-slash canonical URL.

REQ-00146 implemented functional required

Template V1 shall provide a configurable primary navigation system that supports nested menu nodes.

REQ-00157 implemented functional required

The SiteLogo component shall support a primary logo and an alternate logo variant; the alternate shall activate automatically based on the active color-scheme theme, and shall be overridable via an explicit prop that takes precedence over the theme-driven default.

REQ-00158 implemented functional required

The SiteLogo component shall use an explicit alt text value when configured; when not configured it shall fall back to the site title from src/config/site.ts.

REQ-00159 implemented functional required

The theme switcher shall be available in two variants: an icon-cycling button (ThemeIconSwitcher) and a text select dropdown (ThemeModeSwitcher). Both shall support Light, Dark, and System modes and share the same preference storage contract.

REQ-00160 implemented functional required

The active theme switcher variant shall be configurable via a single field in src/config/site.ts (themeSwitcher: 'icon' | 'select' | 'none') without requiring changes to header or layout components.

REQ-00161 implemented functional required

When themeSwitcher is set to 'none', no theme control shall be rendered and the site shall present in light mode only; no switcher markup shall appear in the desktop header or mobile dialog.

REQ-00162 implemented functional required

The icon theme switcher shall cycle through modes in the order system -> light -> dark -> system on each click, display the icon corresponding to the current preference, and update its aria-label and title to reflect the active mode.

REQ-00163 implemented functional required

The primary navigation shall include a search entry point (icon link) in both desktop and mobile contexts, implemented via Search.astro with a data-search-trigger attribute for future modal wiring.

REQ-00164 implemented functional required

The footer shall render social icon links driven by the site configuration surface; omitting or emptying the configured social links shall hide the social icons row entirely.

REQ-00165 implemented functional required

The footer shall render SiteLogo to maintain brand consistency between header and footer without duplicating logo configuration.

REQ-00166 implemented functional required

Any external link that opens in a new tab (target='_blank') shall include rel='noopener noreferrer'. External links in prose content shall not open in a new tab by default; only links where the author explicitly intends a new-tab experience (e.g. social icons, certain CTAs) shall use target='_blank'.

REQ-00167 implemented functional required

External links in prose content shall render a visually distinct icon (e.g. external-link glyph) adjacent to the link text. Links that open in a new tab shall additionally include a visually hidden announcement (e.g. '(opens in new tab)') so screen reader users are informed of the context change.

REQ-00169 implemented functional required

Static `.astro` pages and markdown content entries shall support an optional `heroTitle` field that, when present, overrides `title` as the rendered page H1 heading while `title` continues to drive the browser tab title and SEO `<title>` tag.

REQ-00170 implemented functional recommended

Static `.astro` pages and markdown content entries shall support an optional `shortTitle` field for use in condensed-space surfaces such as navigation labels, breadcrumbs, and card titles.

REQ-00173 implemented functional required

The system shall support a provider-agnostic redirects manifest that defines redirect rules in source control. Redirect execution uses Astro's native routing with middleware status code correction. The manifest format is designed for future provider-specific output generation (e.g., Netlify, Vercel, Cloudflare) without making any provider mandatory.

REQ-00174 implemented functional recommended

Redirects shall be definable at the content level via frontmatter in addition to the global redirects manifest.

REQ-00176 implemented functional required

The navigation system shall define a Primary Menu and a Utility Menu by default. The Primary Menu drives main site navigation; the Utility Menu is intended for footer and legal/system pages.

REQ-00177 implemented functional required

The mobile navigation experience shall include a panel/drawer-style interaction model. Relying solely on layout reflow of the main menu is not sufficient.

REQ-00178 implemented functional required

Mobile navigation shall inherit menu items from the Primary Menu by default and shall support override via a dedicated mobile menu configuration when a distinct item set is required.

REQ-00179 implemented functional required

Category listing pages shall be indexable by default. Tag listing pages shall be configurable, defaulting to not indexed. Tag pages shall exist regardless of indexability and shall emit noindex directives rather than returning 404.

REQ-00180 implemented functional required

The content system shall support media embeds, with first-class support for YouTube embeds.

REQ-00181 implemented functional required

The system shall provide Similar/Related Items content blocks for content pages.

REQ-00183 implemented functional required

The system shall generate RSS and/or Atom feeds. Content shall be able to exclude itself from generated feeds.

REQ-00184 implemented functional required

The theme shall provide a PostShare component that uses the Web Share API for native sharing with clipboard copy as the fallback for unsupported browsers.

REQ-00185 implemented functional required

Button components shall support Primary, Outline, Secondary, Secondary Outline, Tertiary, Tertiary Outline, Neutral, Inverted, On Primary, On Secondary, and On Tertiary visual variations. Outline variations represent hollow/ghost treatments reusing their matching action token family. Contextual on-* variants are designed for use on matching brand-colored surfaces. A documented semantic-token override escape hatch allows rare one-off treatments using semantic token references. Per-instance border-radius is controlled via Tailwind utility classes on class, not a dedicated prop.

REQ-00186 implemented functional required

The footer copyright notice shall automatically reflect the current year.

REQ-00187 implemented functional required

The theme shall provide a configurable social icon system. Each social icon entry shall define an icon name and destination URL. The system shall be reusable across components and layouts beyond the footer.

REQ-00191 implemented functional required

Content shall support narrow, default, wide, and full alignment modes. Components shall respect these alignment rules.

REQ-00193 implemented functional required

The theme shall provide first-class structured data support for Organization, WebPage, Article, FAQPage, BreadcrumbList, and LocalBusiness schema types.

REQ-00194 implemented functional required

Open Graph images shall be generated using content-driven inputs (e.g., page title, description, or configured template) with content-level overrides available.

REQ-00199 implemented functional required

The search entry point (REQ-00163) shall be upgraded to a functional search modal dialog that allows users to search site content without navigating away from the current page.

REQ-00200 implemented functional required

Trailing slash enforcement behavior shall be controllable from a single configuration value such that enabling or disabling it does not require manual edits in multiple files.

REQ-00201 implemented functional required

The theme shall provide a complete SEO <head> system with site-level defaults from site.ts and per-page frontmatter override support, covering: <title>, <meta name="description">, <meta name="author">, Open Graph tags (og:title, og:description, og:image, og:url), and Twitter Card tags, wired into BaseLayout.astro or a dedicated SEOHead.astro component.

REQ-00202 implemented functional required

The canonical site URL shall be defined once in site.ts and used as the default for all URL-dependent outputs (sitemap, canonical tags, Open Graph metadata), with environment variables serving only as override mechanisms.

REQ-00203 implemented functional optional

The system shall support reusable markdown content fragments via a unified fragments collection that supersedes the original page-fragments collection, with core/site shadow support.

REQ-00204 deferred functional optional

The system shall provide a preview route that renders any content entry (including drafts) in full page context, accessible only in development or via an authenticated surface, and excluded from sitemap and robots outputs.

REQ-00205 implemented functional required

The theme shall provide a sitewide search system that indexes published content and returns relevant results to power the search modal experience (REQ-00199).

REQ-00208 implemented functional required

The system shall provide the C5 section baseline set (`Hero`, `CallToAction`, `InfoCards`, `FeatureGrid`, `Testimonials`) as reusable section components composed from shared primitives.

REQ-00210 implemented functional required

The theme documentation system (collection, routes, sidebar, requirements browser) shall be disableable via site configuration, with all related routes, navigation links, and build output suppressed when disabled.

REQ-00211 implemented functional required

The theme shall provide a shared Docs Kit (schema factory, generic sidebar navigation, parameterized related-docs resolution) that child sites can use to create custom documentation collections without duplicating theme-docs internals.

REQ-00212 implemented functional required

The theme shall rewrite file-relative markdown links targeting .md/.mdx files to their canonical route URLs at build time, so authors can use natural inter-document linking across routed content collections.

REQ-00213 implemented functional required

YouTube embeds shall use a click-to-load facade pattern with build-time cached thumbnail images to prevent third-party data transfer before user interaction.

REQ-00215 implemented functional required

Media embed components shall degrade gracefully without JavaScript, providing direct links to the embedded content as fallback.

REQ-00216 implemented functional required

The image resilience system shall substitute a site-configurable fallback image for broken image elements at runtime, with an opt-out mechanism (data-no-fallback attribute) for images that should not receive fallback treatment and infinite-loop prevention for fallback image failures.

REQ-00221 implemented functional recommended

Redirect execution shall preserve query parameters from the original request URL, passing them through to the target URL by default.

REQ-00223 implemented functional required

Infinite loading shall announce newly loaded content via ARIA live regions so assistive technology users are informed of additions without losing reading context.

REQ-00225 implemented functional required

The lightbox shall integrate with markdown content via a build-time rehype plugin that wraps eligible images in lightbox-enabled links, enabling lightbox behavior without manual markup in content files.

REQ-00227 implemented functional required

The lightbox shall support gallery grouping via data attributes, keyboard navigation (arrow keys for gallery traversal, Escape to close), and touch swipe gestures for mobile navigation.

REQ-00228 implemented functional required

The site header shall support configurable scroll behavior modes — static (default), CSS sticky, and scroll-up (hides on scroll down, reveals on scroll up) — selectable via site configuration (HeaderConfig).

REQ-00229 implemented functional required

The theme mode switcher shall support three presentation variants — icon toggle (cycling light/dark/system), select dropdown (explicit mode selection), and disabled (no UI) — selectable via site configuration.

REQ-00230 implemented functional required

Client-side filtering and pagination on listing pages shall synchronize state with URL query parameters, enabling shareable and bookmarkable filtered views with browser back/forward navigation support.

REQ-00231 implemented functional required

The search modal shall be activatable via Cmd/Ctrl+K keyboard shortcut, with the shortcut suppressed when focus is in form inputs, textareas, or contenteditable elements.

REQ-00233 implemented functional required

A standalone search page (/search/) shall be provided as a full-page search interface with URL state via query parameter (?q=), scoped to pages and articles collections, and marked noindex to prevent search engine indexing of search result pages.

REQ-00234 implemented functional required

Search interactions shall emit a defined event taxonomy (search_opened, search_submitted, search_results_viewed, search_result_clicked, search_no_results) routed through the analytics trackEvent system, with privacy-safe payloads (no raw query text; use queryLength, resultCount, resultIndex).

REQ-00237 implemented functional required

All forms collecting personal data shall include a required GDPR consent checkbox linking to the site's privacy policy URL, preventing submission without explicit consent.

REQ-00239 implemented functional required

Forms shall render as valid, accessible HTML without JavaScript. A noscript message shall inform users that JavaScript is required for submission. Native HTML constraints (required, type, minlength) shall provide first-line validation before client-side vanilla JS enhancement.

REQ-00240 implemented functional required

An Accordion component shall be provided with single-expand behavior, configurable default-open item (for CLS prevention), heading level control, reduced-motion support, and an FAQ variant that emits FAQPage structured data via the FAQSchema component.

REQ-00241 implemented functional required

A Tabs component shall be provided with horizontal and vertical orientation support, WAI-ARIA tabs pattern compliance via vanilla JS, and keyboard navigation (arrow keys for tab selection, Home/End for first/last).

REQ-00242 implemented functional recommended

A Tooltip component shall be provided with hover and focus triggers, role="tooltip" semantics, aria-describedby association between trigger and tooltip, Escape key to dismiss, and reduced-motion support for show/hide transitions.

REQ-00243 implemented functional recommended

A CopyButton component shall be provided for one-click clipboard copying with visual success feedback (icon swap with auto-revert after timeout), keyboard accessibility, and screen reader announcement of the copied state.

REQ-00244 implemented functional required

A consent revocation mechanism (ConsentReset) shall be provided that clears consent state from localStorage, removes known analytics cookies (configurable prefix list), disables event tracking for the remainder of the session, and triggers a page reload to ensure a clean runtime state.

REQ-00245 implemented functional recommended

Site configuration shall support custom analytics snippet injection (script URL or inline code, head or body-end location, unique id for deduplication) with the same consent-gating rules as built-in GTM/GA4 providers.

REQ-00247 implemented functional required

In development mode (import.meta.env.DEV), analytics scripts shall not be injected into the page and trackEvent calls shall log to console.debug instead of dispatching to the dataLayer, preventing dev activity from polluting production analytics.

REQ-00252 implemented functional required

A Drawer primitive shall be provided as a reusable slide-in overlay with configurable position (left, right, full-width), focus trapping, scroll locking, ESC and backdrop-click close, and reduced-motion support, serving as the shared foundation for mobile menu, search modal, and other overlay patterns.

REQ-00253 implemented functional required

Article listing pages shall display entries as structured cards showing title, publication date, category link, tag badges, and description excerpt, composed into a responsive grid layout.

REQ-00254 implemented functional recommended

Article detail pages shall provide previous/next navigation links to adjacent articles in the collection, ordered by publication date.

REQ-00255 implemented functional recommended

Content detail pages shall support a RelatedContent section displaying links to related pages or articles, driven by frontmatter configuration (relatedDocs field).

REQ-00261 implemented functional required

Form submission UX shall implement hybrid status feedback: replace the entire form with a success message on successful submission; display field-level error messages inline on validation failure, keeping the form visible for correction.

REQ-00266 implemented functional recommended

Content collections shall support an optional linkedRoute frontmatter field that associates a metadata-only content entry with a static .astro page route, enabling programmatic discovery of static pages via getCollection() without requiring those pages to use file-based content routing.

REQ-00268 implemented functional recommended

The theme shall provide a scroll-reveal animation utility that animates elements as they enter the viewport, with named presets for common entrance patterns (fade, slide, scale variants) and support for custom keyframes.

REQ-00270 implemented functional required

The theme shall set a .dark class on the document element alongside data-theme so that Tailwind ecosystem libraries (Starwind, Flowbite, shadcn/ui, DaisyUI) can detect dark mode without adapter code.

REQ-00271 implemented functional optional

The theme shall provide an optional git-based CMS (Sveltia CMS) for browser-based editing of pages, articles, and fragments. The CMS shall be disabled by default with zero build cost when off.

REQ-00272 implemented functional required

The theme shall provide layout and content components covering standard content block patterns (separator, button group, columns, media-text, pullquote, reading time, table, gallery, masonry gallery, cover, timeline).

Non-functional

REQ-00010 normative non-functional recommended

Client-side JavaScript usage shall be minimized while preserving functional richness.

REQ-00027 normative non-functional required

Theme tokens shall maintain WCAG 2.2 AA contrast conformance.

REQ-00039 deprecated non-functional required

Motion behavior shall respect reduced motion preferences.

REQ-00050 normative non-functional required

Modal/lightbox components shall implement focus trapping and restoration.

REQ-00053 normative non-functional required

Transient interactive UI shall restore focus upon dismissal.

REQ-00058 implemented non-functional optional

The Back to Top control shall be accessible via keyboard and assistive technologies.

REQ-00075 normative non-functional recommended

Content rendering failures shall degrade gracefully.

REQ-00081 normative non-functional required

The theme shall conform to WCAG 2.2 Level AA.

REQ-00085 normative non-functional required

Reduced motion preferences shall be respected.

REQ-00088 normative non-functional recommended

Interactive targets shall meet minimum size guidelines.

REQ-00089 implemented non-functional required

Interactive documentation and requirements catalog interfaces shall provide accessible interaction patterns, including keyboard navigation and assistive technology support for filtering and control elements.

REQ-00104 normative non-functional recommended

GDPR compliance mechanisms shall be supported.

REQ-00105 normative non-functional optional

CCPA compliance mechanisms shall be supported.

REQ-00121 implemented non-functional recommended

Component and token changes shall be verified across theme modes.

REQ-00130 normative non-functional required

The theme shall support modern browser versions.

REQ-00131 normative non-functional recommended

Lighthouse targets shall be soft goals with 90+ preferred.

REQ-00135 normative non-functional recommended

Font loading strategies shall minimize layout shift.

REQ-00149 implemented non-functional required

Primary navigation and submenu controls shall be keyboard-operable with deterministic focus management and correct ARIA state announcements.

REQ-00182 normative non-functional required

Authors shall be shielded from direct Tailwind utility class usage where reasonable. Content authoring surfaces shall not require knowledge of the underlying styling framework.

REQ-00197 implemented non-functional required

The system shall include automated tests covering critical user journeys.

REQ-00232 implemented non-functional required

The Pagefind search library shall be lazy-loaded on first search interaction (modal open), not at page load, to avoid impacting initial page weight and loading performance.

REQ-00238 implemented non-functional required

Form endpoints shall enforce rate limiting per client IP address, with configurable thresholds (default: 5 submissions per 15 minutes) and adapter-aware IP resolution supporting reverse proxy and CDN headers (X-Forwarded-For, CF-Connecting-IP, X-Real-IP).

Architectural

REQ-00005 normative architectural recommended

Authenticated/member-only sections may be supported where needed; highly app-like authenticated product experiences remain out of scope for the v1 baseline.

REQ-00006 normative architectural recommended

Internationalization shall not be required for the initial release but shall not be structurally precluded.

REQ-00011 normative architectural required

Hybrid rendering activation shall be explicit and deterministic (config or frontmatter driven), not inferred implicitly.

REQ-00014 implemented architectural required

Theme switching shall be implemented via document-level class or attribute changes.

REQ-00016 implemented architectural required

Persisted theme preference storage shall be implementation-agnostic and replaceable without affecting component contracts.

REQ-00020 implemented architectural required

All data-driven views shall define deterministic empty and error states.

REQ-00021 implemented architectural required

Infinite loading shall be a progressive enhancement layered on canonical paginated URLs.

REQ-00023 implemented architectural required

The theme shall use a semantic design token system.

REQ-00024 implemented architectural required

The theme shall implement a CSS variable-driven token system.

REQ-00025 normative architectural recommended

Color definitions shall use OKLCH where practical.

REQ-00029 implemented architectural required

The token system shall support Primary, Secondary, and Tertiary brand color roles.

REQ-00030 normative architectural required

The Tertiary brand color shall be restricted to decorative/emphasis usage.

REQ-00031 implemented architectural required

The theme shall define an allowed semantic color palette.

REQ-00032 implemented architectural required

Brand color roles shall include variants for emphasis and subtle states.

REQ-00033 implemented architectural required

The theme shall define radii presets.

REQ-00034 implemented architectural required

The theme shall define shadow presets.

REQ-00035 normative architectural required

Components shall use presets rather than ad-hoc values.

REQ-00036 normative architectural required

Styling decisions shall resolve from tokens or presets.

REQ-00037 normative architectural required

Utility class usage shall not bypass semantic token constraints.

REQ-00038 normative architectural required

Interactive states shall resolve from semantic tokens.

REQ-00040 normative architectural required

Components shall resolve styling from semantic design tokens rather than raw color values.

REQ-00041 deprecated architectural required

Dark mode behavior shall be driven by semantic token value swapping rather than component-level per-mode styling overrides.

REQ-00042 normative architectural required

Dark mode and all mode differences shall be expressed through semantic token value swapping; component-level per-mode styling overrides shall be exceptional and explicitly documented.

REQ-00045 normative architectural required

Components shall encapsulate styling and behavior.

REQ-00046 normative architectural recommended

Framework-free components are preferred.

REQ-00047 normative architectural required

Components shall expose stable public APIs.

REQ-00064 deprecated architectural recommended

Markdown heading levels shall be programmatically adjusted for semantic correctness.

REQ-00068 implemented architectural recommended

Modified time shall resolve from a deterministic source hierarchy.

REQ-00079 normative architectural required

Figures and captions shall follow consistent semantic patterns.

REQ-00087 implemented architectural required

Form validation shall implement correct ARIA relationships and semantics.

REQ-00090 normative architectural required

Accessibility requirements apply equally to theme UI, content UI, and documentation/requirements UI.

REQ-00103 implemented architectural optional

Required scripts shall execute regardless of consent state.

REQ-00106 normative architectural required

The theme shall function as a Parent Theme equivalent.

REQ-00107 deprecated architectural required

Theme overrides shall survive upgrades.

REQ-00108 normative architectural required

Theme overrides shall survive upgrades and updates shall flow downstream without breaking customizations; upgrade compatibility is a mutual contract between upstream and downstream.

REQ-00109 normative architectural recommended

Themes shall be distributable across repositories.

REQ-00112 implemented architectural required

The system shall define a canonical requirements data model.

REQ-00122 normative architectural required

Requirements definitions shall be normative over explanatory documentation.

REQ-00123 normative architectural required

External content sources shall not alter requirement semantics.

REQ-00124 implemented architectural required

The system shall define deterministic enforcement boundaries separating hard failures from warnings.

REQ-00127 normative architectural required

Overrides shall not break token completeness, accessibility invariants, or routing/metadata invariants.

REQ-00132 normative architectural required

Provider-specific infrastructure shall not be required.

REQ-00133 normative architectural required

CDN-backed deployments shall be supported.

REQ-00136 normative architectural required

Third-party font CDNs shall not be assumed.

REQ-00142 implemented architectural required

Documentation routes shall use slug-based canonical URLs (for example, `/theme-docs/<slug>/`). Immutable `docId` values (format `DOC-00001`) shall remain required for internal cross-reference and traceability.

REQ-00143 implemented architectural required

Override resolution shall follow deterministic precedence (`defaults -> theme override -> project override -> page/content`) with validation failures for same-tier key collisions.

REQ-00147 implemented architectural required

Navigation implementation shall separate menu data contract, resolver logic, and render/layout integration responsibilities.

REQ-00148 implemented architectural required

Menu behavior bindings shall use stable `data-*` hooks rather than style-class selectors.

REQ-00150 implemented architectural required

Menu customization APIs shall preserve structural and behavior-critical classes/attributes, limiting overrides to documented slots or token-driven surfaces.

REQ-00151 normative architectural required

Tailwind utility token mappings shall resolve through documented semantic design-token aliases (for example via `@theme` / `@theme inline`) rather than raw palette literals in component/layout code.

REQ-00152 rejected architectural required

Tailwind prose/typography plugin styling shall resolve through documented semantic prose token aliases rather than raw plugin defaults or hardcoded values in component/layout code.

REQ-00153 implemented architectural required

Tailwind utility token mappings shall include documented semantic aliases for link, status, form, and icon roles so component/layout code does not rely on raw palette literals.

REQ-00154 rejected architectural required

Long-form content surfaces shall use a shared token-driven prose baseline that defines heading/paragraph spacing, list marker presentation, and block-level element rhythm.

REQ-00155 implemented architectural required

Shiki shall be the canonical code-block renderer for long-form content and preview surfaces; non-markdown sample code blocks shall use the same Shiki rendering path rather than bespoke raw `<pre><code>` styling.

REQ-00156 implemented architectural required

Site identity constants (title, home URL, logo paths, and logo alt text) shall be defined in a single canonical configuration file (src/config/site.ts) and imported by components; values shall not be hard-coded inline.

REQ-00168 implemented architectural required

External link detection and announcement injection shall be applied automatically to all prose content rendered through the long-form content pipeline (articles, docs, page-content layouts), without requiring authors to manually annotate individual links.

REQ-00171 implemented architectural required

The configuration override hierarchy shall follow a deterministic four-layer precedence: Parent defaults -> Child theme overrides -> Content frontmatter overrides -> Runtime user preferences. Runtime preferences are limited to theme mode and consent state.

REQ-00172 implemented architectural required

The system shall support environment-aware configuration so that behavior can differ between development and production builds.

REQ-00188 implemented architectural required

The spacing scale shall be finite and token-driven. Components and layouts shall avoid hard-coded spacing values outside the defined scale.

REQ-00189 implemented architectural recommended

Semantic z-index tokens shall be defined for layered UI contexts including dropdown, sticky, overlay, modal, and toast layers. Components shall resolve stacking from these tokens rather than ad-hoc z-index values.

REQ-00190 implemented architectural required

The theme shall define standardized layout width constraints. At minimum a content width, a wide width, and a prose/reading width shall be defined as canonical layout tokens.

REQ-00192 implemented architectural required

The theme shall define standardized vertical spacing rules between content blocks and around headings, lists, and tables within long-form content.

REQ-00195 normative architectural required

The theme shall follow Semantic Versioning (SemVer). Minor versions shall be backwards-compatible. Major versions may contain breaking changes, which shall be documented with migration notes.

REQ-00207 normative architectural required

Collection-driven routing shall be required for entries under `src/content/pages/`; this requirement does not prohibit additional public route families backed by the `articles` collection, `docs` collection, or static `.astro` pages.

REQ-00209 implemented architectural required

Page, article-detail, and docs-detail routes shall render heading-band content in the `PageGridLayout` `subheader` slot using `Hero`; without actions or image, `Hero` renders as a compact page-title band.

REQ-00214 implemented architectural required

A generic Embed component shall apply restrictive iframe defaults (sandbox with allow-scripts and allow-same-origin only, no allow attributes by default, no allowfullscreen by default, referrerpolicy of strict-origin-when-cross-origin or stricter) with explicit opt-in escape hatches for permissions.

REQ-00217 implemented architectural required

Content validation shall use a pluggable static rules framework that supports rule registration via configuration, per-rule severity levels, and extensibility for new rules without modifying the framework core.

REQ-00218 implemented architectural required

Static rule violations shall support a dual exception model: inline source comments for localized suppressions and a centralized TypeScript manifest for cross-cutting exceptions. Both mechanisms shall require a documented reason for traceability.

REQ-00222 implemented architectural required

Infinite loading integration shall use stable data-attribute DOM contracts (data-article-grid, data-docs-grid) as the interface between server-rendered HTML and client-side progressive enhancement logic, avoiding brittle structural selectors.

REQ-00226 implemented architectural required

Lightbox enablement shall resolve through a three-level configuration hierarchy: content frontmatter override, collection default, system default (false), allowing per-page, per-collection, and system-wide control.

REQ-00235 implemented architectural required

Form submissions shall pass through a layered server-side validation pipeline in this order: honeypot check, rate limiting, CAPTCHA verification, field validation, provider dispatch. Each layer shall return a typed JSON response with appropriate HTTP status code (200 success, 422 validation error, 429 rate limit, 403 authorization failure, 500 provider error).

REQ-00236 implemented architectural required

Server-side form handling shall use pluggable provider adapter interfaces for email delivery (EmailProvider) and newsletter subscription (NewsletterProvider), enabling backend substitution without form component changes. In development, providers shall fall back to console logging when credentials are absent; in production, missing credentials shall cause requests to fail closed.

REQ-00246 implemented architectural required

The analytics system shall define a shared event taxonomy (page_view, cta_click, form_submit, search_submitted, search_result_clicked) dispatched via a centralized trackEvent function that routes to the dataLayer in GTM format. Event payloads shall follow privacy-safe conventions (no PII, no raw search query text).

REQ-00248 deprecated architectural required

Alpine.js shall be loaded via a custom deferred integration that initializes Alpine only after DOM ready, avoiding the bundle overhead and eager initialization of the official @astrojs/alpinejs integration.

REQ-00249 deprecated architectural required

Critical CSS delivery shall use a preload/swap pattern (link rel="preload" as="style" with onload swap) rather than build-time CSS inlining tools, avoiding complex build-time CSS parsing dependencies while maintaining above-the-fold rendering performance.

REQ-00250 implemented architectural required

Typography shall use a fluid type scale based on CSS clamp() functions, generated from a declarative token configuration file, ensuring smooth scaling between defined viewport breakpoints without requiring media query breakpoints.

REQ-00260 implemented architectural required

Cross-component communication shall use named custom DOM events dispatched on the window object (e.g., theme-changed, search:open, listbox-change) rather than direct component coupling. Event names and payload shapes shall be treated as public API contracts.

REQ-00262 implemented architectural required

External link indicators (icon and screen-reader announcement) shall be automatically applied only to links rendered through the markdown/MDX content pipeline. Component-rendered and navigation links shall use the ExternalLink component for explicit opt-in.

REQ-00263 implemented architectural required

In multi-column page layouts, DOM order shall reflect logical reading and tab order (e.g., sidebar/TOC before main content). CSS Grid shall be used to decouple visual layout from DOM order. Article metadata shall be placed in the page layout's main-header slot.

REQ-00267 implemented architectural required

Configuration values consumed by build-time plugins (rehype, remark) in astro.config.mjs shall be defined independently of site.ts, because Vite path aliases are not available during Astro config parsing. Site overrides affecting plugin behavior shall be synchronized in both astro.config.mjs and site.ts.

REQ-00269 implemented architectural required

Motion Mini (motion/mini) shall be the approved animation engine for WAAPI-based animations, providing a reduced-motion-aware animate() wrapper.

Validation

REQ-00028 implemented validation required

Contrast conformance shall be validated via automated accessibility audits against rendered showcase pages.

REQ-00060 implemented validation required

Frontmatter validation shall be enforced.

REQ-00062 implemented validation required

Draft content shall be excluded from sitemap and indexing outputs.

REQ-00063 implemented validation required

Draft content shall imply noindex/nofollow directives.

REQ-00074 implemented validation required

Pages with missing titles shall fail builds.

REQ-00083 implemented validation recommended

Missing alternative text shall generate warnings.

REQ-00084 rejected validation recommended

Potential color contrast violations shall generate warnings.

REQ-00099 normative validation required

Metadata requirements shall apply to all pages.

REQ-00125 implemented validation required

Build processes shall fail for violations that produce structurally invalid outputs, invalid schemas, or broken routing/metadata invariants.

REQ-00126 implemented validation required

Validation processes shall generate warnings for non-critical quality issues without blocking builds.

REQ-00128 implemented validation required

Build processes shall fail for violations that would ship inaccessible interactive UI when deterministically detectable.

REQ-00129 implemented validation recommended

Missing alt text findings shall generate warnings rather than hard failures, with a documented exception path.

REQ-00141 implemented validation required

Content entries in `pages`, `articles`, and `docs` collections shall require a non-empty `description` field.

REQ-00144 implemented validation required

Fragment references used by routed content shall resolve to existing fragment IDs at build/validation time.

REQ-00175 implemented validation recommended

Broken internal links shall generate warnings by default; CI pipelines on production-targeted branches may be configured to treat them as hard failures.

REQ-00219 implemented validation required

Broken link detection shall validate both route existence and fragment anchors against a pre-build route inventory that does not depend on astro:content availability, using slug generation compatible with Astro's github-slugger behavior.

REQ-00220 implemented validation required

When both the global redirects manifest and content-level redirectFrom define redirects for overlapping source paths, the system shall detect conflicts and surface them as build-time errors for manifest-level collisions or warnings when frontmatter overrides manifest entries.

REQ-00224 implemented validation required

Token override declarations in site style files shall be validated by a dedicated lint tool that distinguishes structural violations (wrong-location declarations, same-tier key collisions) as hard failures from advisory findings (unknown token references, incomplete mode coverage) as warnings.

REQ-00256 implemented validation required

Fluid design tokens (typography, spacing) shall be generated from a declarative token configuration file via a build script (generate:tokens), with drift detection (generate:tokens:check) integrated into the validate pipeline to ensure generated CSS output stays synchronized with configuration source.

REQ-00257 implemented validation required

File ownership markers (// CORE-OWNED, // SITE-OWNED) in governed directories shall be validated by a lint step in the validate pipeline, ensuring all core-owned source files declare their ownership zone and site-owned directory files do not carry incorrect markers.

REQ-00265 implemented validation required

File ownership marker validation shall apply context-specific defaults for unmarked files: src/site/ and src/components/ are SITE-OWNED by directory (markers recommended but not required); src/pages/ with no marker defaults to SITE-OWNED (fail-safe for site customization files); src/content/ defaults to SITE-OWNED by directory convention. Core-owned directories (src/core/, src/lib/, scripts/) shall require explicit markers.

Documentation

REQ-00111 implemented documentation required

Documentation shall include user-facing, implementor, and developer layers.

REQ-00116 implemented documentation recommended

Requirements displays shall follow defined grouping rules.

REQ-00117 implemented documentation recommended

Documentation pages shall be canonical-first with respect to requirements.

REQ-00118 normative documentation recommended

Documentation pages containing non-normative guidance shall use Notes sections.

REQ-00119 normative documentation required

Documentation markup shall use semantic HTML.

REQ-00120 normative documentation required

Documentation updates shall be part of completion criteria.

REQ-00198 implemented documentation required

A deployment runbook shall be maintained in the theme-docs collection covering the steps, configuration requirements, and verification checklist for deploying to a production hosting target.

REQ-00251 normative documentation recommended

Components sourced from external pattern libraries shall follow the tier-1 curated source hierarchy defined in §13 and shall document their source origin and any modifications applied, enabling traceability from component to source pattern.

Governance

REQ-00137 normative governance required

Recommendation records shall capture provenance fields including promoted requirement IDs, decision date, and decision owner.

REQ-00138 normative governance required

Canonical requirement lifecycle statuses shall be actively maintained to reflect current decision and implementation state.

REQ-00139 implemented governance recommended

Canonical requirements should define `dependsOn` and `appliesTo` metadata when material dependencies or documentation applicability exist.

REQ-00140 deprecated governance recommended

Canonical requirements should include V1 scope tags when the requirement is explicitly in scope or deferred by the approved V1 scope definition.

REQ-00196 normative governance required

Significant architectural, technology, and process decisions shall be documented as Architecture Decision Records (ADRs) and tracked in the project decisions log.

REQ-00258 normative governance required

All shipped changes that affect public behavior, configuration surfaces, or component APIs shall be documented in CHANGELOG.md following the project's changelog format, with entries created as part of the merge or release process.

REQ-00259 normative governance required

Multi-step implementation work shall follow the planning standard (.docs/standards/PLANNING.md), with plans stored in .docs/plans/ and archived to .docs/archive/ upon completion. Plans shall cite relevant charter sections using §N notation.

REQ-00264 normative governance required

Theme-docs frontmatter order fields shall follow a banded convention: topic-indexes at 1, entry-point guides at 2–10, regular docs starting at 11 with incremental assignment, and showcases/layout-recipes starting at 800.

Security

REQ-00206 implemented security required

The contact form shall submit validated data to the Postmark HTTP API for transactional email delivery; API credentials shall not be exposed to the client.

No requirements match the current filters.

Search

Search across pages and articles. Use arrow keys to navigate results.

Search across pages and articles.

Loading search...

Search is unavailable. Please try again later.

    No results for ""

    Try different keywords or fewer words.