Configuration
Reference for site.config.ts and the SiteConfig schema.
site.config.ts
site.config.ts at the project root is the single file to edit when forking the
project. It exports a default object typed against SiteConfig.
import type { SiteConfig } from '@/lib/site';
const siteConfig: SiteConfig = {
name: 'My Site',
description: 'A short description of my site.',
url: 'https://example.com',
author: 'Your Name',
repository: 'https://github.com/you/your-repo',
branch: 'main',
};
export default siteConfig;SiteConfig schema
Defined in src/lib/site.ts:
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Site name. Used as the default <title>, in the title template, and in the sidebar logo. |
description | string | Yes | Default meta description for the root page. |
url | string | Yes | Canonical base URL. Used in metadataBase and sitemap.xml. Must not have a trailing slash. |
author | string | No | Site author. Shown in the sidebar copyright notice. |
repository | string | No | Full URL of the source repository. Enables the "Edit on GitHub" link in the sidebar. |
branch | string | No | Branch to link to in "Edit on GitHub". Defaults to main when repository is set. |
Where values are consumed
| Value | Consumed by |
|---|---|
name | src/app/layout.tsx — metadata.title; src/components/Sidebar.tsx — logo text and icon letter |
description | src/app/layout.tsx — metadata.description |
url | src/app/layout.tsx — metadata.metadataBase; src/app/sitemap.ts — URL prefix in sitemap entries |
author | src/components/Sidebar.tsx — copyright notice in sidebar footer |
repository | src/components/Sidebar.tsx — "Edit on GitHub" link in sidebar footer |
branch | src/components/Sidebar.tsx — branch segment in "Edit on GitHub" URL |