Skip to content

Site Module

VitePress website module for https://itznotabug.dev.

What Lives Here

  • .vitepress/: VitePress config and custom Vue theme.
  • blog/: all blog Markdown content.
  • public/: static assets copied as-is at build time.
  • Root markdown pages:
    • index.md
    • about.md
    • blog.md
    • contact.md
    • work.md
  • Routing config:
    • redirects.ts
    • query-params.json

Build Flow

From repository root, bun run build performs:

  1. scripts/prebuild.js:
    • updates .htaccess redirect/query rules (scripts/redirects.js)
    • updates service worker cache version and pre-cache image list (scripts/worker.js)
    • regenerates site/public/llms.txt (scripts/llms.js)
  2. vitepress build site
  3. HTML/CSS minification pass (scripts/minify.js)

Output:

  • site/.vitepress/dist/

Local Development

Run from repository root:

bash
bun run dev

This starts VitePress with site/ as docs root.

Content Authoring

Create a new post from template:

bash
bun run post

This command updates:

  • site/blog/<slug>.md
  • previous post next metadata linkage

Key Theme Areas

  • Tech stack UI: site/.vitepress/theme/components/tech/
  • Contact + Cal widget: site/.vitepress/theme/components/contact/
  • Work timeline: site/.vitepress/theme/components/work/
  • Analytics utilities: site/.vitepress/theme/utils/

Darshan Pandya