Coding with JavaScript For Dummies
Book image
Explore Book Buy On Amazon

You’ve only just begun your JavaScript journey. The universe of tools, frameworks, and libraries built with JavaScript and that will help you write better JavaScript programs is vast and growing at a mind-boggling pace. Here are ten great JavaScript frameworks and libraries.

Angular JS

Angular JS

Angular JS.

Angular JS, commonly referred to as Angular, is an open source JavaScript application framework. Often confused with a library because of its lightweight design, Angular JS is maintained by Google and the community of developers.

The framework adapts and extends traditional HTML to serve dynamic content through two-way data-bindings that allow for the automatic synchronization of models (data) and views (web pages). As a result, AngularJS de-emphasizes DOM manipulation with the goal of improving testability and performance.

Angular’s design goals are to

  • Improve testability of the code by separating DOM manipulation from application logic.

  • Emphasize the testing of code just as much as the writing of code.

  • Create separation between the client-side of the application and the server side.

  • Provide structure for the application building process, from designing to the UI through writing logic to testing.

Who uses it? YouTube.com, Lynda.com, Netflix.com, and freelancer.com.

Backbone.js

Backbone.js

Backbone.js.

Backbone.js is an open source MVC JavaScript library designed for building single-page web apps. Developing web apps with Backbone gives your app structure and enforces the very good principle that communication with the server should be done through a RESTful API.

The result of using Backbone is that your code will be more modular, and you’ll be able to build and keep track of very complicated web apps with minimal code and in an organized way.

Backbone only has one dependency (underscore.js) and adds very minimal load to your web app.

Who uses it? reddit.com, bitbucket.org, tumblr.com, pintrest.com, and linkedin.com.

Ember.js

Ember.js

Ember.js.

Ember.js is one of the older MVC JavaScript frameworks, with roots going way back to 2007. Ember calls itself “a framework for creating ambitious web applications.” It’s based on the MVC software architecture pattern. Like Backbone, it’s designed for creating single-page web applications.

Ember has a reputation for having a steep learning curve. However, once you know it, the benefits of using Ember are many. Ember is designed to favor convention over configuration. What this means for Ember developers is that if they write code according to Ember’s normal practices, Ember will infer much of the configuration of the app, rather than requiring the developer to specify everything about the app manually. This can be a great timesaver.

Who uses it? digitalocean.com, vine.co, nbcnews.com, twitch.tv, and mediabistro.com.

Famo.us

Famo.us

Famo.us.

Famo.us is an open source JavaScript framework for creating complex user interfaces for any screen. It has a 3D rendering engine built into it, which makes it possible for developers to write JavaScript code that can move objects around the browser in 3D and to create effects and interfaces that previously were only available in native software applications. The result is that web apps created with Famo.us can be much faster and work much more smoothly than web apps built using just HTML5, CSS3, and JavaScript.

Who uses it? InkaBinka.com, SuperStereo, Requested App, and Japan Today.

Knockout

Knockout

Knockout.

Knockout is an open source JavaScript framework for simplifying dynamic JavaScript user interfaces. It uses the Model-View-View-Model pattern.

Knockout includes

  • Declarative bindings

  • Automatic User Interface Refresh (the UI updates automatically when data changes)

  • Dependency tracking

  • Templating

Who uses it? mlb.com, ancestry.com, Eventbrite.com, and ameritrade.com.

QUnit

QUnit

QUnit.

QUnit is a unit testing framework for JavaScript, which is used by many open source JavaScript projects, including jQuery. It can test any generic JavaScript code and is known for being powerful as well as easy to use.

Who uses it? jQuery, jQuery UI, jQuery Mobile, sitepoint.com, and many JavaScript developers.

underscore.js

underscore.js

Underscore.js.

Underscore is a JavaScript library that provides many useful helper functions to programmers. Once you start using the features of Underscore, you’ll wonder how you ever got by without them.

Examples of Underscore helpers include sortBy (for sorting lists), groupBy (for grouping a collection into sets), contains (returns true if a list contains a specified value), shuffle (returns a shuffled copy of a list), and around 100 other functions — many of which should have been built into JavaScript from the beginning.

Who uses it? dropbox.com, lifehacker.com, theverge.com, att.com, and gawker.com.

Modernizr

Modernizr

Modernizr.

Modernizr is a JavaScript library for detecting the features of a web browser in which it’s running. It’s most often used as a very simple and handy way to check whether a user’s browser can run a particular bit of JavaScript or make use of an API prior to attempting to use that feature. Modernizr is often used in conjunction with tools called Polyfills, which provide alternative ways to accomplish cutting-edge features of modern browsers in less-capable devices and browsers.

Who uses it? go.com, about.com, hostgator.com, addthis.com, and usatoday.com.

Handlebars.js

Handlebars.js

Handlebars.

Handlebars is a client-side JavaScript templating engine. It makes it possible for programmers to insert templates into HTML pages that will be parsed using live data that is passed to the Handlebars.js function.

Who uses it? meetup.com, mashable.com, flickr.com, wired.com, and
overstock.com.

jQuery

jQuery

JQuery.

JQuery is the “Write Less, Do More” JavaScript library. Used by over 60 percent of the most popular sites on the web, it has become an indispensable tool for most JavaScript programmers. Just a few of the things that jQuery makes easier include document manipulation, event handling, animation, and Ajax.

In addition, jQuery has a plug-in architecture that allows other developers to build upon the core jQuery functionality in order to create new libraries and frameworks.

Some of the most popular jQuery plugins include jQuery UI, jQuery Mobile, numerous effects, data pickers, image manipulation tools, and image sliders. Check out this complete list of available jQuery plugins.

Who uses it? WordPress.com, Pinterest, Amazon, Microsoft.com, Etsy, and many, many more.

About This Article

This article is from the book:

About the book authors:

Chris Minnick is an accomplished author, trainer, and web developer who has worked on web and mobile projects for both small and major businesses. Eva Holland is an experienced writer and trainer who has designed and taught online, in-person, and video courses. They are cofounders of WatzThis?

This article can be found in the category: