ProxyApi: Now With Intellisense!
After announcing ProxyApi in my last post I had a few people suggest that it would be more useful if it included some kind of intellisense. So…now it does! Install the new ProxyApi.Intellisense NuGet...
View ArticleSingle Page Applications using Node & Knockout
This post is going to be a short walkthrough on how to use Node and KnockoutJS to create a simple single page application. What is a Single Page Application? …a web application or web site that fits on...
View ArticleFallback Images with Knockout
After a busy few weeks at work I’ve finally managed to spend some time on knockout development again, and today I found a nice solution to a problem with data-bound images. In my example I had a list...
View ArticleTranslating Date Formats in JavaScript
Urgh, dates. It’s always bloody dates. Whether it’s different time zones, localised formats (both long and short) or any one of a hundred other annoying little problems…somehow, whenever you start...
View ArticleEditable Object Graphs in Knockout
Update: this feature is now available as part of the ko.plus library available on GitHub and NuGet! A little while back I wrote a post about making editable fields in knockout that allow you to enter...
View ArticleProxyApi & Anti-Forgery Tokens
Anti-Forgery Tokens? Good question. Anti-forgery tokens are a recommended way of preventing one of the OWASP Top Ten security vulnerabilities: Cross Site Request Forgery, or CSRF. CSRF works on the...
View ArticleHandling ‘this’ in ko.command
Update: this feature is now available as part of the ko.plus library available on GitHub and NuGet! The problem of context – the this value – in JavaScript is one that seems to keep causing problems....
View ArticleCreating NuGet packages with Grunt
Grunt is a JavaScript task runner that can be used to automate (among other things) the various tasks around building and deploying JavaScript: concatenation, minification, JSHint, QUnit. etc. etc....
View ArticleProtecting your CouchDB Views
If you work with a SQL or other RDBMS database you most likely have your schema backed up somewhere under source control. Maybe it’s a bunch of SQL scripts, maybe it’s the classes from which you...
View Article3 Ways to Deal with SFOUC in KnockoutJS
What is SFOUC? A Sudden Flash Of Unstyled Content, or SFOUC, refers to that irritating few milliseconds between when your web page loads and when all of your dynamic content pops into place. The reason...
View ArticleCustom Operation Names with Swashbuckle 5.0
This is a post about Swashbuckle – a .NET library that seamlessly adds Swagger support to WebAPI projects. If you aren’t familiar with Swashbuckle then stop reading right now and go look into it –...
View ArticleFaking Mouse Events in D3
D3 is a great library but one of the challenges I have found is with unit testing anything based on event handlers. In my specific example I was trying to show a tooltip when the user hovered over an...
View ArticleTranslating Date Formats in JavaScript
Urgh, dates. It’s always bloody dates. Whether it’s different time zones, localised formats (both long and short) or any one of a hundred other annoying little problems…somehow, whenever you start...
View ArticleEditable Object Graphs in Knockout
Update: this feature is now available as part of the ko.plus library available on GitHub and NuGet! A little while back I wrote a post about making editable fields in knockout that allow you to enter...
View ArticleProxyApi & Anti-Forgery Tokens
Anti-Forgery Tokens? Good question. Anti-forgery tokens are a recommended way of preventing one of the OWASP Top Ten security vulnerabilities: Cross Site Request Forgery, or CSRF. CSRF works on the...
View ArticleHandling ‘this’ in ko.command
Update: this feature is now available as part of the ko.plus library available on GitHub and NuGet! The problem of context – the this value – in JavaScript is one that seems to keep causing problems....
View ArticleCreating NuGet packages with Grunt
Grunt is a JavaScript task runner that can be used to automate (among other things) the various tasks around building and deploying JavaScript: concatenation, minification, JSHint, QUnit. etc. etc....
View ArticleProtecting your CouchDB Views
If you work with a SQL or other RDBMS database you most likely have your schema backed up somewhere under source control. Maybe it’s a bunch of SQL scripts, maybe it’s the classes from which you...
View Article3 Ways to Deal with SFOUC in KnockoutJS
What is SFOUC? A Sudden Flash Of Unstyled Content, or SFOUC, refers to that irritating few milliseconds between when your web page loads and when all of your dynamic content pops into place. The reason...
View ArticleCustom Operation Names with Swashbuckle 5.0
This is a post about Swashbuckle – a .NET library that seamlessly adds Swagger support to WebAPI projects. If you aren’t familiar with Swashbuckle then stop reading right now and go look into it –...
View Article