There's a few i18n JavaScript libraries in the wild right now, some much better than others, but none that satisfied all my needs. I've found this to be the case when developing in the browser and in node.js. I wanted a single library that I could use in both the client and server sides so I didn't have to keep switching syntax and styles etc. As this didn't already exist (as far as I could tell) I decided to create my own, and I give you int17.

int17 is a highly customizable i18n framework whose locale file structure was inspired by (and fully compatible with) that used by Google Chrome extensions, meaning you can already collaborate with others using online services like crowdin. The API is clean, simple and robust, while also being very forgiving. The last thing you need when learning another library is exactly how methods should be used, and I've put a lot of effort into creating the initial documentation to help with this. Here's a brief highlight of some of it's fantastic features:

  • Simple message fetching
  • Shared API between client and server-side code
  • Localize your HTML easily using special attributes
  • Easily juggle between multiple locale instances
  • Out-of-the-box support for Express

I've been using some of this functionality within some of my Chrome extensions and it's been a lot of fun making these concepts available to everyone. As this is the initial public release of int17, I'm expecting to find lots of bugs and hope that the JavaScript community can help make this something all developers can benefit from.

Download View Source

It's been quite a while since I first released Template 2 years ago but with it now out of beta it has become an extremely stable and feature-rich browser extension.

There's a lot of work in the pipeline, but I'm not letting that deter me from releasing minor updates like this. Here's a brief overview of some of the features coming this year:

  • Interactive editor for writing templates
  • A brand-spanking new homepage at
  • Ability to share and download templates created by other users
  • Social network integration

Meanwhile the changes included in version 1.2.0 cover a lot of ground and keep the extension up-to-date and fresh with a completely redesigned Templates tab on the Options page which makes managing your templates a piece of well-iced cake.


  • #110: Replace calls to deprecated chrome API methods
  • #111: Update Bootstrap to v2.2.2
  • #115: Add new operations for query selectors
  • #116: Redesign Templates tab on Options page
  • #117: Improve build process and restructure code to simplify support for other browsers
  • #120: Update jQuery to v1.8.3
  • #120: Update jQuery URL Parser to v2.2.1
  • #120: Update to v2.0.1
  • #130: Add new configuration file to simplify future changes
  • Plenty of bug fixes and UI tweaks
Install Download View Source

Since I created my first Google Chrome extension, Template (then URL Copy), I have struggled to keep my user base over 200 users. Some weeks it would be just over the mark and then drop anywhere from 50 to 100 users, and the cycle would start all over again.

However, since the recent update for the Chrome Web Store I've seen a steady increase in users and I'm really glad to say that Template has crossed the 1,000 user mark (1,011 when publishing this post). Hurray! After all of the effort I've put in to it it's amazing to finally see it reaching people.

I'm not sure what exactly increased its visibility and/or attractiveness but Google have definitely done something right. Maybe it was the fact that I adopted the new promotional and supporting image specifications early. Maybe it was the fancy unicode characters I added to the description. Or maybe it just got noticed. The truth is I'll never know, but I just hope it continues.

Unfortunately, I can't really say the same for my second extension, iOrder, as it seems to be stuck around 15 users. However, I'm not too frustrated by this as it was a little experiment and tool mainly for my own use that I thought I'd share. It's just a shame I didn't finish it before the iPhone release date.

Overall, the web store's new look is great for users and developers alike. Plus, it gave me the opportunity to contribute to one of my most used extensions, My Extensions. Any Chrome extension developers out there should definitely use this extension by George Papadakis to keep track of their user base.

It's been a lot harder than expected to find time to work on implementing social networks in to Template so I decided to take out the other changes originally for and include them in a newer update.

The changes in version are all aimed at making the options page even easier to use. Although the majority of you won't even notice these changes hopefully you will all benefit from them.


  • #38: Add help documentation for general settings on options page
  • #40: Make template export process no longer require external resource
  • #44: Many minor UI changes in options page
Install Download View Source

After finding myself constantly refreshing the order page for my new iPhone 4S I decided I would ease the pain of others waiting for their iDevice orders to be updatediOrder is a unique and simple Google Chrome extension that needs only the order number and delivery zip/post code to keep you automatically updated with the progress of your order.

Don't just take my word for it, try it yourself!

I've decided to release a small update for Template today. Version includes some minor changes but mainly a redesign of the icons used.

Google recently contacted all extension developers saying that icons, screenshots and promotional images must meet their new criteria to be promoted on their Chrome Web Store so I thought I better update my images since I'm struggling to keep it above 200 users at the moment. Honestly, I didn't like the previous logo but I'm not exactly 100% sure about the new one except when I used it in the promotional images.

I think I'll find another logo to use in the extension itself as it doesn't look great in the toolbar... Expect a update within the week ;)

Unfortunately, is still a bit away as I am currently working on some new projects I've had ideas for and it will take a lot of effort to do right. I am hoping to have it completed before 2012 though as I want to have the final release (1.0.0) done before the extension is a year old.


  • Rebrand logo and create new promotional images
  • #36: Improve URL derivation when using the context menu
  • Update jQuery to v1.6.4
Install Download View Source

Today I made a quick 1.0.2 release for qr.js which contains renamed methods within the API which I feel will make it more simple and understandable to use.

I strongly recommend using QRCode.image and QRCode.canvas from now on as their old method names will probably be completely removed in a future release (not sure when though).


  • Deprecated generateCanvas and generateImage and replaced with canvas and image respectively
Download View Source