Knockthrough
A simple debugging tool to visualize knockoutjs issues.
Install / Use
/learn @JonKragh/KnockthroughREADME
#knockthrough.js
A simple debugging tool for knockoutjs. I'm adding features as I debug various Single Page Apps I'm building.
Tweet me with issues: @jonkragh
Features:
-
Binding Debugging
-
catch and display binding errors
-
highlights the element with the binding error
-
shows the binding error message
-
shows a datacontext dump for the element
-
Debug Hidden Element Issues
-
checkbox to display elements hidden by the "visible" binding
-
shows the binding that hid the element
-
shows a datacontext dump for the element
-
View Model Dump / Visibility
-
select your active view model in the knockthrough toolbar
-
does a json dump of the view models state
-
supports multiple view models per page
-
Observable Change Log
-
Logs all observable property changes
-
Typescript & Javascript Version
Test it out here (click on the red boxes to see the broken bindings).
##Screenshots
##Binding Debugging

Observable Property Change Log

Model Dumps

##Usage
- Reference the js and css files:
- knockthrough.js
- knockthrough.css
- Initialize knockthrough before you call ko.applyBindings
##Dependencies
- Knockout JS
- jQuery
// sample view model
function AppViewModel() {
this.firstName = ko.observable("Bert");
this.lastName = ko.observable("Bertington");
this.fullName = ko.computed(function () {
return this.firstName() + " " + this.lastName();
}, this);
}
// initializing knockthrough.js
$(function () {
var opts = new knockthrough.monitorOptions();
// pass an instance of knockout
opts.ko = ko;
// kickoff the monitor before ko.applyBindings
var monitor = new knockthrough.monitor(opts);
// Activates knockout.js
ko.applyBindings(new AppViewModel());
});
Related Skills
node-connect
350.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
350.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
350.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
