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.