# Development Guide (https://hypit.ai/guide/develop/)

> Getting started with Hypit development.

## Prerequisites [#prerequisites]

| Tool              | Version                | Required for                                                      |
| ----------------- | ---------------------- | ----------------------------------------------------------------- |
| Node.js           | 22.12+                 | everything                                                        |
| pnpm              | 10.33.x                | workspace management; selected by the root `packageManager` field |
| Python            | 3.10–3.13              | local WhisperX and OpenCV Managed Programs                        |
| uv                | latest                 | Python environment management                                     |
| ffmpeg / ffprobe  | recent stable          | media processing                                                  |
| Chrome / Chromium | managed by HyperFrames | local HyperFrames rendering                                       |

Node.js and pnpm are the only hard requirements. The rest are needed only for live Builds.

## Daily workflow [#daily-workflow]

```bash
corepack enable
pnpm install --frozen-lockfile # after pulling or changing dependencies
pnpm check            # TypeScript type-check
pnpm test             # full test suite
```

| Command      | What it runs                                                                      |
| ------------ | --------------------------------------------------------------------------------- |
| `pnpm check` | `tsc -p tsconfig.json --noEmit`                                                   |
| `pnpm test`  | package, service-adapter and repository-boundary tests through Node's test runner |

See [Testing](/guide/testing) for environment-gated tests and test patterns.

## Repository layout [#repository-layout]

```text
hypit/
├── packages/              workspace packages
├── docs/                  VitePress documentation site
├── examples/              runnable example sources
├── services/              local media and transcription services
├── test/                  repository boundary tests and shared fixtures
├── package.json           root workspace manifest
├── pnpm-workspace.yaml    package, service and example-component workspaces
└── tsconfig.json          TypeScript config
```

## Guide contents [#guide-contents]

| Guide                                              | Topic                                                                    |
| -------------------------------------------------- | ------------------------------------------------------------------------ |
| [Making videos with an Agent](/guide/skill)        | Creative direction, service choices and editable projects                |
| [Packages and Extension](/guide/packages)          | Component, model and service ownership; installation and sharing         |
| [Adding an author package](/guide/author-packages) | Step-by-step: new component, Surface, vocabulary and preview, activation |
| [Models and Providers](/guide/providers)           | Select accounts and APIs; develop a Model or Provider package            |
| [Runtime](/guide/runtime)                          | Profile, Workspace, execution and lifecycle boundaries                   |
| [Testing](/guide/testing)                          | Test runner, patterns, examples, boundary tests                          |
| [Conventions](/guide/conventions)                  | Naming, module boundaries, wire data, TypeScript config                  |