My thesis project Notestream was built on top of nodeJS and Express. What has really sold me on nodeJS is the active community and the amount of modules available for use.

Here are a few modules I found useful during Notestream’s development.

Shred

Shred is an HTTP client library. I used the Shred module for AJAX posts when I wanted to append more meta data, but didn’t want to slow down the user from advancing to the next page.

For example, Notestream users save a Vimeo video to their video collection in order to mark it up with annotations. After a user submits the ‘save video’ form, Shred allows the server to gather additional meta-data from Vimeo after the AJAX post is made. It’s all happening in the background.

JSON2csv

Another useful module is JSON2csv, and title pretty much says it all. Notestream users can download their notes in csv format thanks to JSON2csv. The module pings the Notestream API when a user chooses to download their notes, and formats the JSON accordingly.

Tock

Tock is Javascript countdown clock and timer. Why use this when JS already offers interval and timeout functionality? Because they’re not very accurate. What’s awesome about Tock is it self-corrects the time based on the system clock, so it won’t lose track of the time.