An inescapable symptom of widespread web design bad-assery is an abundance of vocabulary words that web designers need to be familiar with. For every job, there is the right tool (or, at least, the “righter” tool), but in order to use that tool, we have to first know its name.
RequireJS is a JavaSript module loader. It’s tight. From its docs:
modular script loader like RequireJS will improve the speed and quality of your code.
I recently wrote a post detailing how Require.js might be able to fit in with Drupal.
Backbone.js gives structure to web applications by providing models with key-value
binding and custom events, collections with a rich API of enumerable functions,views
with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
programming support that you would expect in Prototype.js (or Ruby), but without
Zepto is a jQuery-like library with pretty specific design goals. It aims to almost completely replicate the jQuery API while staying light as a feather, a feat Zepto achieves mostly by removing cross-browser compatibility cruft from jQuery. From its docs:
jQuery-compatible API. If you use jQuery, you already know how to use Zepto.
Handlebars provides the power necessary to let you build semantic templates
effectively with no frustration.
Modernizr is a sweet library that tests browsers for feature support. If we can detect what features a user’s browser is capable of, then we can progressively enhance their experience accordingly. From its docs:
Modernizr allows for this progressive enhancement by adding CSS classes to the html element on page load. These classes reflect functionality we might want to leverage, for instance, CSS gradients. If a user doesn’t have that capability in their browser, we wind up with a class called “no-cssgradients”, and can either polyfill this discrepancy or write CSS that progressively reflects this.
Express is a little framework for creating web apps with node.js. It looks a lot like Sinatra, in that it can be a dead simple mechanism for defining routes that resources are available at. From its docs:
Express is a minimal and flexible node.js web application framework, providing a
robust set of features for building single and multi-page, and hybrid web applications.
You can probably already imagine creating a simple RESTful service with Express that could spoon feed data to a Backbone.js application.
Of course, the moment this distilled glossary is published, there will be a new framework, library, or utility that will be worth consideration; that is the nature of the ever shifting landscape of web design.
Originally published on the Aten blog