Blog of Raivo Laanemets

Stories about web development, consulting and personal computers.

Book review: KnockoutJS Blueprints

KnockoutJS Blueprints is an advanced-level book on the front-end library KnockoutJS (KO). It assumes some familiarity with the library but contains a detailed explanation of KO core concepts in the first chapter. The book focuses on Single Page Applications.

The chapters (five total) are presented as a series of projects that make use of different KO features and integrate it with other libraries. The first chapter deals with the main KO features and serves as a quick introduction. The second chapter describes advanced built-in features such as templates and components and also gives examples how to integrate KO with other libraries through custom binding handlers. The third chapter describes a project using DurandalJS, a framework based on KO that adds missing features, such as routing. The fourth chapter builds a PhoneGap application by combining KO with jQuery-Mobile. The fifth shows how to make a Single Page Application crawlable by search engine bots.

The book comes with a great amount of example code. The code is thoroughly documented and is written in the OOP style which can be either an advantage or disadvantage depending on the code style preferences of the reader. The code modules are defined using the AMD style with Require.js. Other alternatives, such as CommonJS and Browserify or Webpack are not mentioned although the example projects could be adopted to use CommonJS modules.

I recommend the book for front-end/full-stack developers who regularly use KnockoutJS in their work. The book is very practical and contains many useful examples of integrating KO with other front-end libraries in web applications.