Set up your blog and publish your first post
You will use one assigned slug. You only edit files inside that slug. You publish by opening a pull request.
Use this page for first-time setup now and quick reference later.
- 01 Get your slug
- 02 Set up your profile
- 03 Write your post
- 04 Open your PR
Do these steps in order
This is the shortest path from getting a slug to opening your first pull request.
- 01
Confirm your slug
Ask your instructor for your assigned
studentSlug. You will use this same slug in your profile path, post folder, and public URL. - 02
Open your profile file
Edit
src/content/students/{studentSlug}.jsonand keep the filename matched to your assigned slug. - 03
Update your profile fields
Fill in your
displayName,githubUsername,bio, and publication status. Do not changeslug. - 04
Add your post file
Create a Markdown file in
src/content/posts/{studentSlug}/. - 05
Check the filename pattern
Name the file
YYYY-MM-DD-post-slug.mdso the generated route is stable. - 06
Fill in frontmatter
Add
title,description,publishDate, anddraft. Add optional tags or an update date if needed. - 07
Open your pull request
Submit a PR with your slug and post title. CI and instructor review are the publishing gate.
Look up the exact rule you need
Use these sections when you need a file path, naming rule, or frontmatter reminder.
Slug rules
- lowercase only
- letters, numbers, and hyphens only
- no spaces
- do not rename the slug after publishing unless the instructor handles the change
Generated URL pattern: /students/{studentSlug}/ and /students/{studentSlug}/{postSlug}/
Files you may edit
src/content/students/{studentSlug}.jsonsrc/content/posts/{studentSlug}/YYYY-MM-DD-post-slug.mdpublic/student-assets/{studentSlug}/if your class uses assets
Profile fields
Required
slugdisplayNamegithubUsernamebiopublished
Optional
avataraccentColorlinks
Post filename pattern
src/content/posts/{studentSlug}/YYYY-MM-DD-post-slug.md Example output URL: /students/student-slug/first-post/
Frontmatter requirements
Required fields
titledescriptionpublishDatedraft
Optional fields
updatedDatetags
---
title: "[AI Sample] My first post"
description: "Short summary for the directory and RSS feed."
publishDate: 2026-03-09
tags:
- example
- intro
draft: false
--- Check these before opening your PR
PR checklist
- Confirm you edited only your own profile file, post files, and optional asset files.
- Check links, spelling, and Markdown formatting.
- Make sure the filename matches `YYYY-MM-DD-post-slug.md`.
- Set `draft: false` only when the post is ready to publish.
- Fill out the PR template with your slug and post title.
Common mistakes
- editing another student’s folder
- mismatching the slug and the profile filename
- using the wrong post filename pattern
- forgetting required frontmatter fields
- publishing a draft before the post is ready
CI will fail if you edit files outside your assigned slug area.
Use these links when you need more context
Ask your instructor if you do not know your assigned slug yet.