0001 · Website direction
English is authoritative; Chinese reference .
Status: proposal; implementation not authorized. This record defines the website direction. The active documentation baseline is 0002 ; contributor rules are in AGENTS . No application code, PR, build or deployment exists for this proposal. Reviews for future implementation must be selected with the owner before that work starts.
Requirements
- Maintainable personal website with Projects and Experience, without a Research tab. Manage entries in Markdown/MDX so adding content does not require editing page components.
- English-primary interface and content with Simplified Chinese references; English at
/, Chinese at/zh/, with language switching. Do not invent personal achievements. Exclude drafts from published pages and keep private draft content out of the public repository. - A separate public PR log site using OINK , with requirements, decisions, execution and acceptance readable in one article per change.
- pnpm, meaningful tests, a simple CI/CD pipeline, required checks before PR merges, and automatic deployment after merging. Original repository material uses Apache-2.0; respect third-party licenses.
Final visual design, updated biography, blog consolidation, domains and replacement of the existing live site remain owner decisions before dependent implementation.
Plan and decisions
| Area | Direction and rationale |
|---|---|
| Portfolio | Astro static output with TypeScript and Markdown collections. Pre-rendered pages fit a content-led site without a request-time application server. At implementation time, verify the latest stable dependencies/tools, pin exact versions, and commit the pnpm lockfile under the shared version policy. |
| Interaction | Start with CSS and reduced-motion support. Add browser JavaScript or an isolated Three.js interaction only when the chosen design needs it. React/MUI are not baseline dependencies; the proposed content pages do not yet require their component/runtime layer. |
| Logs | Build a separate Hugo/OINK site from the repository’s log articles, without maintaining duplicate content. Keep reusable contributor guides in docs/. |
| Hosting | Target Cloudflare Workers Static Assets for both generated sites. Verify current limits, build configuration and deployment behavior before implementation; production setup is not part of this documentation baseline. |
| Quality | Plan frozen installs, type/content checks, tests for routes, draft exclusion and translation coverage, both static builds, and browser acceptance. Include useful failure cases, not tests that merely repeat implementation. |
| Release | PR jobs check changes without deployment secrets. Deploy checked main artifacts after merging, with repository rules enforcing PRs and required checks. |
| Deployment ordering | Serialize production uploads and check that the revision is still main’s head immediately before upload. A lock alone allows an old rerun to overwrite a newer release. Skip stale reruns, finish uploads already started, and account for the two sites not deploying atomically. |
Implementation should follow these dependencies: content/routes → visual design and selected interactions → separate logs → tests and CI/CD → acceptance. Detailed tasks and tool versions need a current execution plan after implementation is authorized.
Execution
The website direction is documented. Application code, dependencies, tests, CI/CD and hosting configuration have not been added. Contribution and review procedures are defined in the workflow .
Acceptance
Planned acceptance: clean installation and static builds; Markdown-generated routes; draft exclusion; bilingual coverage; useful positive/negative tests; OINK navigation/search; and verified PR/deployment behavior. These checks have not run. This proposal is not implementation acceptance or approval to deploy.