It has been impossible to keep up with all of the javascript libraries that are sprouting up as of 2014. This list is an attempt to cover the most useful and widely known javascript libraries and frameworks that are being used in the web as of today.

Updated as of: Feb 2016

Difference between a Javascript Library vs Framework:

  • Framework: this describes a given structure of "how" you should present your code. Pretty much like a code-template, along some helpers, constructors etc. to solve/simplify a specific problem or bring your architecture in "order". Examples, "Backbone", "requireJS", "socketIO".
  • Library: Is an entire toolkit which highly abstracts different layers, like browsers / DOM models / etc. Also as a good toolkit, it offers a lot of tools and neat stuff to work with, which in general, simplify your coding experience. Examples "jQuery", "MooTools", "YUI"

Legend:

  • = Favorite
  • = Library
  • = Framework
    • Visionquest uses this product.

Here is a short summary of the Javascript libraries that have good documentation and are popular among the community.

Popular:

  • Backbone.js — Backbone supplies structure to JavaScript-heavy 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 application over a RESTful JSON interface.
  • React.js — A declarative, efficient, and flexible JavaScript library for building user interfaces.
  • Knockout.js — Knockout makes it easier to create rich, responsive UIs with JavaScript. Knockout is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user's actions or when an external data source changes), KO can help you implement it more simply and maintainably.
  • Require.js
  • HTML5 Shiv — This script is the defacto way to enable use of HTML5 sectioning elements in legacy Internet Explorer.
  • SweetAlert — A beautiful replacement for JavaScript's "alert"
  • Gridster.js — gridster.js is a jQuery plugin that makes building intuitive draggable layouts from elements spanning multiple columns
  • jQuery UI — The official jQuery user interface library.
  • CodeMirror — In-browser code editor
  • Modernizr — Modernizr is a JavaScript library that detects HTML5 and CSS3 features in the user’s browser.
  • Moment.js — Parse, validate, manipulate, and display dates in javascript.
  • lodash — A JavaScript utility library delivering consistency, modularity, performance, & extras.
  • socket.io — Realtime application framework (Node.JS server)
  • URI.js — Javascript URL mutation library

Important

DOM (manipulation) oriented

  • jQuery — jQuery JavaScript Library
  • Prototype Javascript Frameowrk
  • Moo Tools
  • midori
  • Dojo Toolkit

Template Systems

  • Jade/Jade Runtime — robust, elegant, feature rich template engine for Node.js
  • Handlebars — runtime
  • Mustache — Minimal templating with {{mustaches}} in JavaScript
  • jQuery Mobile
  • cascade Framework

Pure JavaScript/Ajax

  • Socket.io
  • Underscore.js — JavaScript's utility _belt

Touch Libraries / Mobile UI liraries:

  • Slideout.js — A touch slideout navigation menu for your mobile web apps.
  • hammer.js - multi touch java script library.
  • touch swipe - a jquery plugin for touch devices
  • iconate.js — Transform your icons with trendy animations.
  • Onsen UI - Custom Elements-Based HTML5 UI Framework for Building Your Mobile Front End
  • Rachet - build mobile apps with simple HTML, JSS, and Javascript components.
  • Flickity — Touch, responsive, flickable galleries

Animation Libraries

  • WOW.js — Reveal CSS animation as you scroll down a page
  • Move.js — CSS3 backed JavaScript animation framework
  • bxSlider — The responsive CSS animation framework for creating unique sliders, presentations, banners, and other step-based applications.
  • AniJS — A Library to Raise your Web Design without Coding

Parallax Libraries

  • skrollr.js — Stand-alone parallax scrolling library for mobile (Android + iOS) and desktop. No jQuery. Just plain JavaScript (and some love)
  • scrollMagic — The javascript library for magical scroll interactions.
  • stellar.js — Parallax scrolling made easy
  • Parallax.js — Parallax Engine that reacts to the orientation of a smart device
  • scrollReveal.js — Easily reveal elements as they enter the viewport.

GUI-related (widget)

  • Angular.js
  • Bootstrap
  • Dojo Widgets
  • Google's Polymer paper elements
  • jQuery UI
  • Kendo UI of Telerik
  • OpenUI5 of SAP — lets you build enterprise-ready web applications, responsive to all devices, running on almost any browser of your choice

Graphical/visualization (canvas or SVG related)

  • D3.js — A JavaScript visualization library for HTML and SVG.
  • SWFObject
  • Three.js — JavaScript 3D library.
  • velocity.js — Accelerated JavaScript animation.
  • Phaser — a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering
  • Crafty JS — JavaScript Game Engine
  • Leaflet — JavaScript library for mobile-friendly interactive maps
  • Pixi.js — Super fast HTML 5 2D rendering engine that uses webGL with canvas fallback
  • Raphaël — JavaScript Vector Library
  • Epoch — A general purpose, real-time visualization library.
  • SVG.js — A lightweight library for manipulating and animating SVG

Not As Important

Slider Libraries

  • FlexSlider — An awesome, fully responsive jQuery slider plugin
  • OwlCarousel — Owl Carousel. Touch enabled jQuery plugin that lets you create beautiful responsive carousel slider.

Lightbox Libraries

  • Magnific Popup — Light and responsive lightbox script with focus on performance.
  • Lightbox2 — The original lightbox script, now on Github!
  • luidbox — Replicating and improving the lightbox module seen on Medium with fluid transitions.
  • Colorbox — A light-weight, customizable lightbox plugin for jQuery
  • Fluidbox — Replicating and improving the lightbox module seen on Medium with fluid transitions.
  • Swipebox — A touchable jQuery lightbox

Chart Libraries:

  • Chartist.js — Simple responsive charts
  • Flot — Attractive JavaScript charts for jQuery

Unit Testing

  • QUnit
  • Unit.js

Other:

  • eyeballs.js — eyeballs.js is a slim javascript library designed to sit on top of a javascript framework, such as jQuery or Prototype. eyeballs.js can sit on top of an already implemented web app with a well thought out object model. It can also be used to build standalone javascript apps, backed by HTML5 local storage or something like CouchDB.
  • batman.js — a full-stack microframework extracted from real use and designed to maximize developer and designer happiness. It favors convention over configuration, template-less views, and high performance by simply not doing very much. It all adds up to blazingly fast web apps with a great development process; it's batman.js.
  • impress.js — It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com.
  • typeahead.js — a fast and fully-featured autocomplete library
  • qtip2.js — HTML and Javascript Tooltips!
  • forkit.js — Adds a unique pull down menu to your site! Mimics the github ribbon!
  • Zepto.js — a minimalist JavaScript library for modern browsers, with a jQuery-compatible API
  • MixItUp — Library for sorting and filtering.
  • Masonry — Cascading grid layout library
  • Headroom.js — Give your pages some headroom. Hide your header until you need it
  • Highlight.js — Javascript syntax highlighter
  • Swiper — Most modern mobile touch slider with hardware accelerated transitions
  • html2canvas — Screenshots with JavaScript
  • Slideout.js — A touch slideout navigation menu for your mobile web apps.
  • FullCalendar — Full-sized drag & drop event calendar (jQuery plugin)
  • Sortable — is a minimalist JavaScript library for reorderable drag-and-drop lists on modern browsers and touch devices. No jQuery. Supports Meteor, AngularJS, React and any CSS library, e.g. Bootstrap.
  • FitVids.js — A lightweight, easy-to-use jQuery plugin for fluid width video embeds.
  • jPlayer — jPlayer : HTML5 Audio & Video for jQuery
  • SoundManager 2 — A JavaScript Sound API supporting MP3, MPEG4 and HTML5 audio + RTMP, providing reliable cross-browser/platform audio control in as little as 12 KB. BSD licensed.
  • Jcrop — Image Cropping Plugin for jQuery
  • jQuery Timepicker — Adds a timepicker to jQueryUI Datepicker
  • PhysicsJS — A modular, extendable, and easy-to-use physics engine for javascript
  • Device.js — makes it easy to write conditional CSS _and/or_ JavaScript based on device operating system (iOS, Android, Blackberry, Windows, Firefox OS, MeeGo), orientation (Portrait vs. Landscape), and type (Tablet vs. Mobile).
  • AngularJS Touch Carousel — Mobile friendly AngularJS carousel
  • proto.io — Create filly interactive high fidelity prototypes in minutes that look and work exactly like you app should.
  • matchHeight — Ever wish you could have two columns with different sized content match each other's height? With this library you can make a row of columns match each other's height to create symmetrical boxes of equal height throught your website!

Web-application related (MVC, MVVM)

  • Angular.js — HTML enhanced for web apps
  • Backbone.js — Give your JS App some Backbone with Models, Views, Collections, and Events
  • Cappuccino — an open source framework that makes it easy to build desktop-caliber applications that run in a web browser. This framework varies dramatically from the others in that a developers doesn't need to understand or work with any of the front end trifecta -- HTML, CSS or the DOM. All you need to master is the framework!
  • Echo
  • Ember.js — A JavaScript framework for creating ambitious web applications
  • Google Web Toolkit
  • Knockout — Knockout makes it easier to create rich, responsive UIs with JavaScript. Knockout is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user's actions or when an external data source changes), KO can help you implement it more simply and maintainably.
  • Meteor
  • MooTools
  • Prototype Javascript Framework
  • React.js — A declarative, efficient, and flexible JavaScript library for building user interfaces.
  • SproutCore
  • Kendo UI
  • Laravel - The PHP Framework for web artisans.
Sources: StackOverflow, Wikipedia, Weight-of-it.com

Leave a comment below if you have any to add or any descriptions to update!

Leave a Reply