Skip to content
Pilcrow

Configuration

Site name, navigation, forms, and analytics all live in one file.

Everything that is specific to your site is in src/config.ts. If you find yourself editing a component to change your name or a link, look there first.

Site

Key What it does
name Shown in the header and page titles
url Your production URL, used for canonical links and RSS
locale 'en' or 'ko'; picks the interface strings
author Used in the footer and structured data

nav.header is the list in the top bar. nav.footer is a list of groups, each with a title and links. Keep the header short — four links fit comfortably on a phone.

Forms

The contact form posts to Web3Forms. Paste your access key into forms.web3formsKey; with JavaScript on, the message is sent without leaving the page.

For the newsletter form, set forms.newsletter.provider:

Provider id
'buttondown' Your Buttondown username
'kit' The Kit form ID (the number in /forms/<id>/)
'custom' Leave empty and put the subscribe URL in action

Until these are filled in, the forms render but cannot be submitted.

Comments

Comments use Giscus, which stores them in GitHub Discussions. Enable Discussions on a public repository, install the giscus app, and pick the repository on giscus.app. Copy the data-repo, data-repo-id, data-category and data-category-id values into giscus, then set features.comments to true. The widget follows the light and dark theme and the post’s language.