I’ve come across lots of terms while learning web development. I’m feeling myself overwhelmed. Here I just list all the terms I met along the way.

JS Framework

  • Angular
  • Backbone: 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.
  • Ember: A framework for creating ambitious web applications
  • Knockout: Simplify dynamic Javascript UIs with the Model-View-View Model (MVVM) pattern
  • Meteor
  • React: A JavaScript library for building user interfaces
  • CanJs: CanJS is a JavaScript library that makes developing complex applications simple and fast. Easy-to-learn, small, and unassuming of your application structure, but with modern features like custom tags and 2-way binding. Creating apps is easy and maintainable.
  • Sammy: A small web framework with class
  • DevExtreme
  • PhoneGap: PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs for the platforms you care about.
  • Ionic: Ionic is the beautiful, open source front-end SDK for developing hybrid mobile apps with web technologies.

UI Framework

  • FlatUI
  • Bootstrap: Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.
  • jQuery Mobile: jQuery Mobile is a HTML5-based user interface system designed to make responsive web sites and apps that are accessible on all smartphone, tablet and desktop devices.
  • Ratchet: Build mobile apps with simple HTML‚ CSS‚ and JS components.

Gesture

  • Hammer: Add touch gestures to your page.
  • Interact: JavaScript drag and drop, resizing and multi-touch gestures with inertia and snapping for modern browsers (and also IE8+)

Other libraries that has gesture support:

Utility

  • Underscore: Underscore is a JavaScript library that provides a whole mess of useful functional programming helpers without extending any built-in objects.
  • Lodash: A JavaScript utility library delivering consistency, modularity, performance, & extras.
  • JsCookie: A simple, lightweight JavaScript API for handling cookies
  • Modernizr: Modernizr is a JavaScript library that detects HTML5 and CSS3 features in the user’s browser.
  • Sock: provides WebSocket-like object.
  • History: History.js gracefully supports the HTML5 History/State APIs (pushState, replaceState, onPopState) in all browsers.

Automation

  • Grunt: The JavaScript Task Runner
  • Gulp: The streaming build system.

Chart

  • D3: D3.js is a JavaScript library for manipulating documents based on data.
  • HighCharts: Interactive map charts with drilldown and touch support.
  • Raphael: Raphaël is a small JavaScript library that should simplify your work with vector graphics on the web.
  • Chart: Simple, clean and engaging charts for designers and developers

HTML Preprocessor

  • HAML: Beautiful, DRY, well-indented, clear markup: templating haiku.
  • Slim: Slim is a template language whose goal is reduce html syntax to the essential parts without becoming cryptic.
  • Jade

CSS Preprocessor

  • Less
  • Sass
  • Stylus
  • -prefix-free: lets you use only unprefixed CSS properties everywhere. It works behind the scenes, adding the current browser’s prefix to any CSS code, only when it’s needed.
  • AutoPrefixer: PostCSS plugin to parse CSS and add vendor prefixes to CSS rules using values from Can I Use. It is recommended by Google and used in Twitter, and Taobao.

Test

  • Jasmine: Jasmine is a behavior-driven development framework for testing JavaScript code.
  • QUnit: QUnit is a powerful, easy-to-use JavaScript unit testing framework. It’s used by the jQuery, jQuery UI and jQuery Mobile projects and is capable of testing any generic JavaScript code, including itself!
  • Mocha: Mocha is a feature-rich JavaScript test framework running on Node.js and the browser, making asynchronous testing simple and fun.
  • Karma: On the AngularJS team, we rely on testing and we always seek better tools to make our life easier. That’s why we created Karma - a test runner that fits all our needs.
  • Protractor: Protractor is an end-to-end test framework for AngularJS applications. Protractor runs tests against your application running in a real browser, interacting with it as a user would.
  • Chai: Chai is a BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.

See more in JavaScript unit test tools for TDD

Module Loader

  • WebPack: webpack is a module bundler.
  • Require: RequireJS is a JavaScript file and module loader.
  • Sea: Sea.js is a module loader for the web. It is designed to change the way that you organize JavaScript. With Sea.js, it is pleasure to build scalable web applications.
  • Lab: The core purpose of LABjs is to be an all-purpose, on-demand JavaScript loader, capable of loading any JavaScript resource, from any location, into any page, at any time.

Uncatigorized

  • Apache Cordova: Apache Cordova is a platform for building native mobile applications using HTML, CSS and JavaScript
  • Yeoman: The web’s scaffolding tool for modern webapps
  • Bower: A package manager for the web
  • HTML5Boilerplate: HTML5 Boilerplate helps you build fast, robust, and adaptable web apps or sites. Kick-start your project with the combined knowledge and effort of 100s of developers, all in one little package.
  • CrossRoads
  • Signals
  • Hasher
  • Redux: Predictable state container for JavaScript apps
  • Browserify: Browserify lets you require(‘modules’) in the browser by bundling up all of your dependencies.
  • Reveal: A framework for easily creating beautiful presentations using HTML.
  • Slick: The last carousel you’ll ever need.
  • Swiper: Most Modern Mobile Touch Slider
  • Susy: A layout framework

I’ll keep updating this list while learning.