Purpose A running log for Homework 4

This site is the dedicated deliverable for Part 5 of CSE 134B Homework 4. It mirrors the vanilla project’s content, highlights progress with real blog posts, and keeps instructions for graders within one click.

Component-driven

Navigation, hero sections, milestone cards, tag pills, and callouts are Astro components reused across pages. Layouts provide additional structure for article listings and single posts.

Minimal JS

Pages render as static HTML. The only enhancement shipped to the browser is the View Transition handler, which weighs just a few lines and only runs when supported.

Reusable layouts How pages are structured

  • Layout.astro: Global wrapper with header, footer, metadata, and the view transition script.
  • BlogLayout.astro: Adds an optional sidebar—used by the article archive for checklists and filters.
  • ArticleLayout.astro: Standardizes metadata blocks and typography for Markdown posts.

Content collections What powers the posts

The `posts` collection stores frontmatter for titles, descriptions, tags, and publish dates. Astro type-checks the Markdown via `src/content/config.ts`, so adding new entries for future milestones is both quick and safe.