# Awesome Knockout

A curated list of awesome plugins for Knockout framework.

## Frameworks

- Knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript
- Knockback - Knockback.js provides Knockout.js magic for Backbone.js Models and Collections
- Durandal - A cross-device, cross-platform client framework written in JavaScript and designed to make building Single Page Applications
- Falconjs - Adds structure to knockout.js by incorporting models, collections, and views

## Integrations

- JqueryUI - Rich UI components based on KnockoutJS
- Kendo - A project to create a robust set of Knockout.js bindings for the Kendo UI widgets
- Bootstrap - A plugin that adds custom bindings for twitter bootstrap objects such as tooltips and popovers
- ASP.NET MVC - Power of Knockout.js for ASP.NET MVC
- Rails - KnockoutJS for Rails
- Meteor - A Knockout-to-Meteor bridge

## Plugins and libraries

- Mapping - Object mapping plugin for KnockoutJS
- Validation - A validation library for Knockout JS
- Sortable - A Knockout.js binding to connect observableArrays with jQuery UI sortable functionality
- Grid - A data grid plugin for Knockout
- External Template Engine - Custom Template Engine and Template Source for Knockout.js that loads external templates
- Postbox - Publish/subscribe decoupled communication between separate view models and components
- Deferred Updates - The plugin that modifies parts of Knockout’s observable/subscription system to use deferred updates
- Delegated Events - Simple and flexible plugin to do declarative event delegation
- Projections - Adds lodash FP chainability to observable arrays
- Viewmodel - Flexible way to create a knockout viewmodel
- Observable Dictionary - An implementation of an observable dictionary
- Model - A base model for Knockout.js entities
- Namespaces - Namespaces for Knockout.js
- Rest - A simple library to extend Knockout.js objects with RESTful actions
- Local Storage - LocalStorage persistence for Knockout.js
- Router - Router for single-page apps

## Custom Bindings

- Punches - Collection of enhanced binding syntaxes
- Switch Case - Powerful control flow bindings
- Repeat - The repeat binding can replace foreach in many instances and is faster and simpler
- Table - Table binding plugin for Knockout

## Components

- Cart - Simple browser-based shopping cart that uses local storage
- Testing - Helpful utilities for TDD + Knockout.js

## Examples

- WebSockets - Example of real time collaborative web app using WebSockets and Knockout

knockout.md Github