Configuration
Complete reference for blog.config.mjs options.
Site metadata
| Option | Type | Description |
|---|---|---|
siteName |
string |
Site name shown in header/footer |
siteDescription |
string |
Default meta description |
siteUrl |
string |
Production URL (for SEO/sitemap) |
locale |
string |
Locale for dates and formatting |
Posts
| Option | Type | Description |
|---|---|---|
postsPath |
string |
URL path for published posts |
archivedPostsPath |
string |
URL path for archived posts |
postCategories |
string[] |
GitHub Discussion categories to pull |
pagination.perPage |
number |
Posts per page |
Code blocks
| Option | Type | Description |
|---|---|---|
codeBlocks.header |
boolean |
Show language header on blocks |
codeBlocks.lineNumbers |
boolean |
Show line numbers |
codeBlocks.maxHeight |
boolean |
Constrain block height |
Contact form
The contactForm array defines which form providers are available. Each entry needs:
JavaScript
contactForm: [
{ provider: "formspree", endpoint: process.env.CONTACT_FORMSPREE },
{ provider: "discord", endpoint: process.env.CONTACT_DISCORD_WEBHOOK },
],The contact page is only generated when at least one provider has a non-empty endpoint.