CONTRIBUTOR GUIDE
Changelog authoring guide
Everything you need to create, edit, preview, and publish changelog entries for this project.
Content directory
content/changelog/File format
*.mdxPublishing
Build / redeploy required
01 / WORKFLOW
How it works
A changelog entry is just an MDX file. The system handles the rest.
Create the entry
Create a new .mdx file inside content/changelog/. The filename becomes the permanent URL.
content/changelog/v1.2.0.mdxAdd frontmatter
Add the required title, version, and date fields. Description, tags, and images are optional.
title: Your release title
version: v1.2.0
date: 2026-10-06Write the release notes
Write the changelog content below the frontmatter using MDX. Start body headings at ##.
## Added
- New feature
- Another improvementAdd images
If your release needs screenshots or other visuals, place them inside the public/changelog directory.
public/changelog/v1.2.0/cover.pngTest locally
Run the development server and verify both the changelog list and your individual release page.
npm run devCommit & deploy
Commit your changes and deploy. Changelog pages are generated at build time.
git add . && git commit -m "docs: add v1.2.0 changelog"02 / FILES
File naming
The filename becomes the public changelog URL, so treat it as permanent.
v1.2.0.mdxURL: /changelog/v1.2.0
Use lowercase filenames with no spaces. Hyphens and dots are fine.
GOOD
v1.2.0.mdx
v2.0.0-beta.1.mdx
2026-10-launch.mdx
AVOID
Version 1.2.mdx
release notes.mdx
ReleaseNotes.mdx
03 / FRONTMATTER
Required metadata
Every changelog entry needs title, version, and date.
---
title: Faster Dashboard
description: Dashboard performance improvements.
version: v1.2.0
date: 2026-10-06
tags: [feature, performance]
image: /changelog/v1.2.0/cover.png
imageAlt: Faster dashboard
---titleYesversionYesdateYesdescriptionRecommendedtagsOptionalimageOptionalimageAltOptionalMissing a mandatory field or using an invalid date causes the build to fail. This prevents broken changelog entries from reaching production.
04 / CONTENT
Write the release notes
Everything below the closing frontmatter delimiter is rendered as MDX.
---
title: Faster Dashboard
description: Dashboard performance improvements.
version: v1.2.0
date: 2026-10-06
tags: [feature, performance]
---
This release focuses on speed and reliability.
## Added
- Faster dashboard loading
- Improved search
## Fixed
- Fixed sidebar flickering05 / IMAGES
Add release images
Store changelog images under public/changelog/<version>/.
public/
└── changelog/
└── v1.2.0/
├── cover.png
├── dashboard.png
└── invite.png---
image: /changelog/v1.2.0/cover.png
imageAlt: The redesigned dashboard
---
Recommended ratio
16:9
Formats
WebP or PNG
Target size
~500 KB or less
06 / MDX
Avoid common MDX errors
MDX is stricter than regular Markdown because it also parses JSX and JavaScript expressions.
Curly braces are interpreted as expressions.
AVOID
{id}USE
`{id}`Angle brackets can be interpreted as JSX.
AVOID
<something>USE
`<something>`JSX tags must be properly closed.
AVOID
<br>USE
<br />Quote YAML values containing a colon.
AVOID
title: Performance: 60% fasterUSE
title: "Performance: 60% faster"07 / PUBLISH
Before you publish
Use this checklist before opening your pull request.
Ready to add a changelog entry?
Create an MDX file, follow the guide, test it locally, and submit your changes.