• English
  • Arsvine Realm Overview

    Arsvine Realm is Arsvine Zhu's personal portfolio and blog. Visually it presents a post-apocalyptic HUD aesthetic. Technically it is a self-hosted, multilingual Next.js site. Media lives on Tencent Cloud COS. Blog posts and tweets come from an external private GitHub content repo. Protected blog posts go through a TOTP gate backed by a signed HttpOnly access-grant cookie.

    This section is the engineering-side manual for Realm. It is meant for maintainers and coding agents, not visitors.

    Where things live

    • Repository: https://github.com/Arsvine-Realm-Dev-Team/arsvine-realm
    • Live site: https://arsvine.com
    • Documentation site: https://docs.arsvine.com (the Realm section you are reading)
    • Documentation source: arsvine-realm/docs/ — the shorter maintenance doc set inside the same repo

    Technical profile

    DimensionStack
    FrameworkNext.js 16 with Pages Router (not App Router)
    UIReact 18, TypeScript, SCSS Modules plus shared SCSS partials
    3D / motionThree.js, @react-three/fiber, @react-three/drei, @react-three/cannon, cannon-es, GSAP, Web Animations API
    Contentnext-mdx-remote for MDX; external content via GitHub Contents API
    i18nnext-intl 4; UI locales zh-CN / zh-TW / en; optional content locales ja / ru / fr
    TestingVitest with jsdom; tests grouped by tests/lib, tests/components, tests/hooks, tests/i18n, tests/pages, tests/repo
    ServerCustom Node.js server server.js (not next start)
    RuntimeNode.js 24.x (engines.node in package.json)

    How to read this section

    Pages are grouped by topic, not by audience:

    1. routes-and-proxy — route model and the proxy.ts middleware responsibilities
    2. pages-tree — every page under pages/[locale]/... and the dynamic routes
    3. content-sources — bundled data/ plus the external GitHub content repo
    4. protected-posts — TOTP flow, signed cookies, and the static-prod invariant
    5. api-endpoints — the 13 pages/api/* routes and their boundaries
    6. performance-tiers — the four-tier adaptive controller in useAdaptivePerformance
    7. development — local commands, COS Referer workflow, fonts, media
    8. gotchas — historical regressions and fragile conventions

    Suggested reading order: routes-and-proxy and pages-tree first to build a physical map; then content-sources and protected-posts for the content flow; consult api-endpoints and performance-tiers as needed; read gotchas before any change.