Doc

Project Development Baseline

The implemented technical baseline, directory ownership, and local development entry points for Ying Blog.

Ying Blog is currently a pure static content site built with Vite+, Vue, TypeScript, vite-ssg, and Markdown. The main branch is not a generic platform; it is the public, reusable, and verifiable baseline for the Ying Blog project site.

Project Role

The main branch serves the project site. Its content should focus on Ying Blog itself:

  • Implementation notes.
  • Development rules and maintenance notes.
  • Static-site, content-system, and bilingual maintenance experience.
  • Seed content suitable for a public repository baseline.

Personal site content belongs on the fy-blog branch and does not go directly into main.

Technical Baseline

Vite+

Vite+ scripts organize development, checking, testing, building, and previewing.

Vue + TypeScript

Pages, components, routing, and content types are implemented with Vue and TypeScript.

vite-ssg

Production builds emit static HTML while preserving client-side enhancements.

Markdown

Posts, Docs, and About use Markdown as their content source.

Directory Ownership

Directory Responsibility
src/content/ Markdown content for Posts, Docs, and About
src/config/ Site, profile, taxonomy, and project-card config
src/components/ Reusable navigation, card, TOC, and content widgets
src/pages/ Home, listing, detail, taxonomy, and 404 pages
src/lib/ Path, SEO, content-query, and URL helpers
scripts/ Content generation, static assets, and output checks
docs/ Public repository docs for implemented features and rules only

Local Development Entry Points

bash
npm run dev
npm run content:generate
npm run check
npm run test
npm run build
npm run ci
npm run preview

npm run content:generate writes src/generated/content.ts. That file is generated by scripts and should not be edited by hand.

npm run ci is the complete local gate. It runs formatting and type checks, tests, and static build verification.

Implemented Output

The build emits:

  • /zh/ and /en/ bilingual routes.
  • Home, posts, docs, projects, about, taxonomy, and 404 pages.
  • Static HTML for every Markdown content page.
  • sitemap.xml, rss.xml, robots.txt, and 404.html.

The site must remain deployable as pure static output. Without an explicit project decision, do not add CMS, comments, analytics, search, drafts, generated social images, or project detail pages.