Introduction
TKO v4.0.1
Modern Knockout, clarified
Reactive data binding and UI templating with zero runtime dependencies. Start with the package you need and move from overview to working bindings.
Quick start
Section titled “Quick start”Browser
Section titled “Browser”Package manager
Section titled “Package manager”npm install @tko/build.referencebun add @tko/build.referencepnpm add @tko/build.referenceyarn add @tko/build.referenceFor Knockout 3.x compatibility, use @tko/build.knockout instead.
First binding example
Section titled “First binding example”<div id="app"> <label> Name <input data-bind="textInput: name" /> </label> <p>Hello, <strong data-bind="text: name"></strong>.</p></div>
<script src="https://cdn.jsdelivr.net/npm/@tko/build.reference/dist/browser.min.js"></script><script> const ko = globalThis.tko ko.applyBindings({ name: ko.observable('TKO') }, document.getElementById('app'))</script>Choose a build
Section titled “Choose a build”Recommended
@tko/build.reference
Modern path with TSX, ko-* attributes, native provider, and strict equality in expressions.
@tko/build.knockout
Compatibility-focused. Drop-in replacement for existing Knockout applications.
What stays familiar
Section titled “What stays familiar”- Observables and computed values —
ko.observable,ko.observableArray,ko.computed - Declarative bindings —
data-bind="text: msg"and the same binding APIs - Components and custom bindings — the component system and binding extensibility
What to read next
Section titled “What to read next”Core docs
Bindings
Binding syntax, common bindings, and view updates.
State modelObservables
Observables, observable arrays, extenders, and rate limiting.
CompositionComponents
Reusable UI, loading strategies, and component architecture.
See it in actionExamples
Interactive demos showing observable updates, dependency graphs, and reactive state.