Skip to content
CtrlK

ArdoConfig

On this page

Main Ardo configuration.

In JSX-first architecture, only build-time options are needed here. Runtime UI configuration (header, sidebar, footer) is done in JSX.

import type { ArdoConfig } from "ardo/config"

type ArdoConfig = {
    /** Site title (used for default meta tags) */
    title: string;
    /** Site description (used for default meta tags) */
    description?: string;
    /** Separator between page title and site title (default: " | ") */
    titleSeparator?: string;
    /** Base URL path */
    base?: string;
    /** Absolute site URL used for canonical and social metadata URLs */
    siteUrl?: string;
    /** Content source directory (default: 'content') */
    srcDir?: string;
    /** Build output base directory, containing client/ and server/ (default: 'build') */
    outDir?: string;
    /** Site language (default: 'en') */
    lang?: string;
    /** Additional head tags (deprecated: export `meta` from the route or `app/root.tsx` instead) */
    head?: HeadConfig[];
    /** Markdown processing options */
    markdown?: MarkdownConfig;
    /** Generated sidebar options */
    sidebar?: SidebarConfig;
    /** Site-level social metadata defaults */
    metadata?: MetadataConfig;
    /** Simple brand customization for the default theme and header logo. */
    brand?: ArdoBrandConfig;
    /** Sitemap and robots.txt generation */
    seo?: SeoConfig;
    /** Build-time internal link checking */
    linkCheck?: LinkCheckConfig;
    /** Static redirect generation */
    redirects?: RedirectConfig[];
    /** Build-time validation policy for content metadata. */
    validation?: ContentValidationConfig;
    /**
     * Major-version documentation routing.
     *
     * When enabled, Ardo treats `base` as the deployment root and appends the current
     * version path to build canonical URLs, sitemap entries, and runtime links.
     */
    versioning?: DocumentationVersioningConfig | false;
    /**
     * Strict static localization. Put each localized route under
     * `app/routes/<locale>/`; Ardo rejects missing or unlocalized pages rather
     * than serving an implicit fallback.
     */
    i18n?: false | I18nConfig;
    /** Static OpenAPI 3.0/3.1 reference generation. */
    openapi?: OpenApiConfig;
    /** Custom Vite configuration */
    vite?: Record<string, unknown>;
    /**
     * Project metadata (auto-detected from package.json if not provided).
     * Available at runtime via `config.project` from `virtual:ardo/config`.
     */
    project?: ProjectMeta;
    /** Build timestamp (ISO string, set automatically by the Vite plugin) */
    buildTime?: string;
    /** Git commit hash (set automatically by the Vite plugin) */
    buildHash?: string;
};

Properties

NameTypeRequiredDescription
titlestringYesSite title (used for default meta tags)
descriptionstringNoSite description (used for default meta tags)
titleSeparatorstringNoSeparator between page title and site title (default: " | ")
basestringNoBase URL path
siteUrlstringNoAbsolute site URL used for canonical and social metadata URLs
srcDirstringNoContent source directory (default: 'content')
outDirstringNoBuild output base directory, containing client/ and server/ (default: 'build')
langstringNoSite language (default: 'en')
headHeadConfig[]NoAdditional head tags (deprecated: export meta from the route or app/root.tsx instead)
markdownMarkdownConfigNoMarkdown processing options
sidebarSidebarConfigNoGenerated sidebar options
metadataMetadataConfigNoSite-level social metadata defaults
brandArdoBrandConfigNoSimple brand customization for the default theme and header logo.
seoSeoConfigNoSitemap and robots.txt generation
linkCheckLinkCheckConfigNoBuild-time internal link checking
redirectsRedirectConfig[]NoStatic redirect generation
validationContentValidationConfigNoBuild-time validation policy for content metadata.
versioningDocumentationVersioningConfig | falseNoMajor-version documentation routing.

When enabled, Ardo treats base as the deployment root and appends the current
version path to build canonical URLs, sitemap entries, and runtime links.
i18nfalse | I18nConfigNoStrict static localization. Put each localized route under
app/routes/<locale>/; Ardo rejects missing or unlocalized pages rather
than serving an implicit fallback.
openapiOpenApiConfigNoStatic OpenAPI 3.0/3.1 reference generation.
viteRecord<string, unknown>NoCustom Vite configuration
projectProjectMetaNoProject metadata (auto-detected from package.json if not provided).
Available at runtime via config.project from virtual:ardo/config.
buildTimestringNoBuild timestamp (ISO string, set automatically by the Vite plugin)
buildHashstringNoGit commit hash (set automatically by the Vite plugin)