D3.js: “A phenomenal library for data and data visualization,” according to Smith. D3 performs data-based document manipulations using HTML, SVG and CSS aligned with Web standards.
Datajs: “A really good one for data manipulation, and more for application development around Big Data,” Smith said. Datajs is a cross-browser library that leverages JSON, OData and HTML5-enabled browser features.
App pattern frameworks
Angular: “Angular depends on how much complexity you want to use,” said Smith. “It gives you a lot more granular control. Angular does extremely well with calling and manipulating data from the browser. The cool thing about Angular is its Material Design CSS framework. It pushes the envelope for flat design. That partnership between Google and Microsoft, however ironic, shows a much more collaborative and open-source commitment.”
Ember.js: “Ember has a really good HTMLBars [previously known as Handlebars.js] template engine,” Smith said. Ember’s architecture is based on the model-view-controller, and is best designed for creating scalable single-page applications using a rich object model and two-way data binding.
Node.js: “I’m always nervous about a Node server going down, but now Azure takes care of that with its high-availability IaaS availability for Node,” said Smith. “The biggest thing I use Node for is real-time data. Not the AJAX haul, but real-time in the sense of Big Data being updated on the server and Node updating the front-end data visualization immediately.”