mirror of
https://github.com/hypit-ai/hypit.git
synced 2026-11-06 18:57:21 +00:00
92a6c2af89
Replace the obsolete v1 quickstart and monolithic develop page with a concise quickstart and eight focused guides, in English and Chinese. Give the home page and the documentation different themes. The home page keeps the branded always-dark editorial design with no appearance toggle; documentation pages use the stock VitePress theme with light/dark support. Everything branded is scoped to `html.home-page`, set before first paint by the inline script in config.ts and kept in sync by theme/Layout.vue, because `html` and `body` sit outside the theme's `.Layout` root. Exclude docs/README.md and docs/implementation-status.md from the site: they index repository files and link to ../spec, ../packages and ../services, which resolve when browsing the repository but have no route on the published site. This restores `vitepress build` with dead-link checking enabled.
2.9 KiB
2.9 KiB
title, description
| title | description |
|---|---|
| Development Guide | Getting started with Narratage development. |
Development Guide
Prerequisites
| Tool | Version | Required for |
|---|---|---|
| Node.js | 22+ | everything |
| pnpm | 9+ | workspace management |
| Python | 3.10–3.13 | WhisperX and OpenCV sidecar services |
| uv | latest | Python environment management |
| ffmpeg / ffprobe | recent stable | media processing |
| Chrome / Chromium | recent stable | HyperFrames rendering |
Node.js and pnpm are the only hard requirements. The rest are needed only for live Builds.
Daily workflow
pnpm install # after pulling or changing dependencies
pnpm check # TypeScript type-check: v1 + v2
pnpm test # full test suite: v1 + v2
| Command | What it runs |
|---|---|
pnpm check:v1 |
tsc -p tsconfig.json --noEmit — retained v1 research oracle |
pnpm check:v2 |
tsc -p tsconfig.v2.json --noEmit — all v2 workspace packages |
pnpm test:v1 |
node --import tsx --test 'test/**/*.test.ts' |
pnpm test:v2 |
node --import tsx --test 'packages/*/test/**/*.test.ts' 'tools/*.test.mjs' |
See Testing for environment-gated tests and test patterns.
Repository layout
svml/
├── packages/ 64 v2 workspace packages (the active system)
├── spec/ 7 normative specification documents
├── docs/ VitePress documentation site
├── examples/ v2 examples and v1 regression fixtures
├── services/ Python sidecar services (whisperx, image-opencv)
├── src/ v1 legacy source (regression evidence only)
├── stdlib/ v1 kernel definitions and runtime
├── test/ v1 test suite
├── tools/ boundary tests and build scripts
├── package.json root workspace manifest
├── pnpm-workspace.yaml workspace: [packages/*]
├── tsconfig.json v1 TypeScript config
└── tsconfig.v2.json v2 TypeScript config
src/, stdlib/ and test/ are the v1 research oracle, retained as regression evidence. They
are not the v2 API.
Guide contents
| Guide | Topic |
|---|---|
| Package architecture | The four layers, dependency rules, package anatomy, facets |
| Adding an author package | Step-by-step: new component, Surface, activation |
| Adding a Provider | Step-by-step: new Endpoint adapter |
| Runtime Profile | JSON and TypeScript configuration, diagnostics, Build archive |
| Local services | WhisperX and OpenCV sidecar setup |
| Testing | Test runner, patterns, examples, boundary tests |
| Conventions | Naming, module boundaries, wire data, TypeScript config |