# tko
**Repository Path**: mirrors_knockout/tko
## Basic Information
- **Project Name**: tko
- **Description**: 🥊 Technical Knockout – The Monorepo for Knockout.js (4.0+)
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-25
- **Last Updated**: 2026-07-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# TKO ("Technical Knockout")
[](https://badge.fury.io/js/@tko%2Fbuild.reference)
[](https://github.com/knockout/tko/actions/workflows/test-headless.yml)
[](https://github.com/knockout/tko/actions/workflows/lint-and-typecheck.yml)
Modern successor to [Knockout.js](https://knockoutjs.com). Reactive data binding and UI templating with zero runtime dependencies.
Knockout applications written over a decade ago are still running in production. TKO gives them a path forward — swap the script tag, verify your tests pass, then optionally adopt modern features like TSX, native providers, and modular packages.
## Quick start
```html
```
Or as a classic script:
```html
```
Or via a package manager:
```sh
npm install @tko/build.reference
```
**[Full documentation at tko.io](https://tko.io)**
## Builds
| Package | Description |
|---------|-------------|
| `@tko/build.reference` | **Recommended.** Modern build with TSX, `ko-*` attributes, native provider, strict equality. |
| `@tko/build.knockout` | Knockout 3.x compatibility. [Migrating from Knockout?](https://tko.io/3to4/) Start here. |
## Development
| Command | Description |
|---------|-------------|
| `bun install` | Install dependencies |
| `bun run build` | Build all packages |
| `bun run test` | Run tests (Vitest, headless Chromium) |
| `bun run verify` | Full check: lint + typecheck + build + test |
| `bun run knip` | Detect unused code and dependencies |
| `bun run check` | Biome lint + format |
See [AGENTS.md](AGENTS.md) for full contributor instructions.
## Architecture
27 modular `@tko/*` packages, two bundled builds. TypeScript source, esbuild compilation, Bun workspaces.
The core model: observables notify subscribers when they change. Bindings subscribe to observables and update the DOM. No virtual DOM, no diffing — updates are proportional to what changed, not tree size.
See [agents/soul.md](https://tko.io/agents/soul.md) for the design philosophy.
## Direction
TKO is moving toward an AI-maintained "dark factory" model — where the tooling, tests, and documentation are robust enough that AI agents can handle routine maintenance autonomously. See [plans/2026-04-16-dark-factory.md](plans/2026-04-16-dark-factory.md).
## License
MIT — [opensource.org/licenses/MIT](https://opensource.org/licenses/MIT)
Copyright (c) TKO contributors. Based on [Knockout.js](https://knockoutjs.com).