Knockout is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user’s actions or when an external data source changes), KO can help you implement it more simply and maintainably.

Code Quality Rank: L3
Monthly Downloads: 0
Programming language: JavaScript
License: GNU General Public License v3.0 or later
Tags: Ui     jQuery     Mvvm    
Latest version: v3.5.1

knockout alternatives and similar packages

Based on the "MVVM" category.
Alternatively, view knockout alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of knockout or a related project?

Add another 'MVVM' Package



Knockout is a JavaScript MVVM (a modern variant of MVC) library that makes it easier to create rich, desktop-like user interfaces with JavaScript and HTML. It uses observers to make your UI automatically stay in sync with an underlying data model, along with a powerful and extensible set of declarative bindings to enable productive development.

Getting started

Join the chat at https://gitter.im/knockout/knockout

Totally new to Knockout? The most fun place to start is the online interactive tutorials.

For more details, see

Downloading Knockout

You can download released versions of Knockout from the project's website.

For Node.js developers, Knockout is also available from npm - just run npm install knockout.

Building Knockout from sources

If you prefer to build the library yourself:

  1. Clone the repo from GitHub
   git clone https://github.com/knockout/knockout.git
   cd knockout
  1. Acquire build dependencies.

Make sure you have Node.js and Java installed on your workstation. These are only needed to build Knockout from sources. Knockout itself has no dependency on Node.js or Java once it is built (it works with any server technology or none). Now run:

   npm install
  1. Run the build tool
   npm run grunt

Now you'll find the built files in build/output/.

To run a single task, use --

   npm run grunt -- build:debug

Running the tests

If you have phantomjs installed, then the grunt script will automatically run the specification suite and report its results.

Or, if you want to run the specs in a browser (e.g., for debugging), simply open spec/runner.html in your browser.


MIT license - http://www.opensource.org/licenses/mit-license.php

*Note that all licence references and agreements mentioned in the knockout README section above are relevant to that project's source code only.