JavaScript Libraries
UI
Form
- hyperform/hyperform: Capture form validation back from the browser
- guillaumepotier/Parsley.js: Validate your forms, frontend, without writing a single line of javascript
- chriso/validator.js: String validation
- madebymany/sir-trevor-js: Rich content editing entirely re-imagined for the web
Editor
- ajaxorg/ace: Ace (Ajax.org Cloud9 Editor)
- codemirror/CodeMirror: In-browser code editor
- sofish/pen: enjoy live editing (+markdown)
- guardian/scribe: A rich text editor framework for the web platform
- tholman/zenpen: A minimalist writing zone.
- jaredreich/pell: 📝 the simplest and smallest (1kB) WYSIWYG text editor for web, with no dependencies
See also Markdown for JavaScript Markdown editors
Data Visualization
Others
- isagalaev/highlight.js: Javascript syntax highlighter
- davidmerfield/randomColor: A tiny script for generating attractive colors
- filamentgroup/tablesaw: A group of plugins for responsive tables.
- t4t5/sweetalert: A beautiful replacement for JavaScript’s “alert”
- fgnass/spin.js: A spinning activity indicator
- NUKnightLab/TimelineJS3: TimelineJS v3: A Storytelling Timeline built in JavaScript. http://timeline.knightlab.com
- javve/list.js: The perfect library for adding search, sort, filters and flexibility to tables, lists and various HTML elements
- sindresorhus/screenfull.js: Simple wrapper for cross-browser usage of the JavaScript Fullscreen API
- 6pac/SlickGrid: A lightning fast JavaScript grid/spreadsheet
UX
- tweenjs/tween.js: Javascript tweening engine
- janpaepke/ScrollMagic: The javascript library for magical scroll interactions.
- ccampbell/mousetrap: Simple library for handling keyboard shortcuts in Javascript
- madrobby/keymaster: A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies.
- dmauro/Keypress: A keyboard input capturing utility in which any key can be a modifier key.
- tuupola/lazyload: Vanilla JavaScript plugin for lazyloading images
DOM
Template
- wycats/handlebars.js
- janl/mustache.js: Minimal templating with {{mustaches}} in JavaScript
- pugjs/pug: Pug – robust, elegant, feature rich template engine for Node.js
- aui/art-template: High performance JavaScript templating engine
Network
- socketio/socket.io-client: Realtime application framework (client)
- xmppjs/xmpp.js: XMPP for JavaScript
- sockjs/sockjs-client: WebSocket emulation - Javascript client
Storage
- typicode/lowdb: lowdb is a small local JSON database powered by Lodash (supports Node, Electron and the browser)
- localForage/localForage: 💾 Offline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API.
Cookies
- js-cookie/js-cookie: A simple, lightweight JavaScript API for handling browser cookies
- codejoust/session.js: Session.js - Get user session information
Multimedia
- imsky/holder: Client-side image placeholders.
- qrohlf/trianglify: Algorithmically generated triangle art
- svgdotjs/svg.js: The lightweight library for manipulating and animating SVG
- DmitryBaranovskiy/raphael: JavaScript Vector Library
- paperjs/paper.js: The Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas
Canvas
- mozilla/pdf.js: PDF Reader in JavaScript
- devongovett/pdfkit: A JavaScript PDF generation library for Node and the browser
Utils
- lodash/lodash: A modern JavaScript utility library delivering modularity, performance, & extras.
- dtao/lazy.js: Like Underscore, but lazier
- tjmehta/101: A modern JS utility library
- melanke/Watch.JS: watch the changes of any object or attribute
- codemix/fast.js: Faster user-land reimplementations for several common builtin native JavaScript functions.
- facebook/immutable-js: Immutable persistent data collections for Javascript which increase efficiency and simplicity.
- VerbalExpressions/JSVerbalExpressions: JavaScript Regular expressions made easy
- numbers/numbers.js: Advanced Mathematics Library for Node.js and JavaScript
- 3rd-Eden/useragent: Useragent parser for Node.js, ported from browserscope.org
- Valve/fingerprintjs2: Modern & flexible browser fingerprinting library
- andrewplummer/Sugar: A Javascript library for working with native objects.
- mrdoob/stats.js: JavaScript Performance Monitor
- visionmedia/page.js: Micro client-side router inspired by the Express router
- Marak/faker.js: generate massive amounts of fake data in Node.js and the browser
- matthewhudson/current-device: The easiest way to write conditional CSS and/or JavaScript based on device operating system, orientation, and type
date
- iamkun/dayjs: ⏰ Day.js 2KB immutable date library alternative to Moment.js with the same modern API
- date-fns/date-fns: ⏳ Modern JavaScript date utility library ⌛️
Flow control
- petkaantonov/bluebird: Bluebird is a full featured promise library with unmatched performance.
- tildeio/rsvp.js: A lightweight library that provides tools for organizing asynchronous code
- caolan/async: Async utilities for node and the browser
Others
- mrdoob/three.js: JavaScript 3D library.
- pixijs/pixi.js: The HTML5 Creation Engine: Create beautiful digital content with the fastest, most flexible 2D WebGL renderer.
- winjs/winjs: A UI toolkit for modern browsers
- baconjs/bacon.js: FRP (functional reactive programming) library for Javascript
- enyo/dropzone: Dropzone is an easy to use drag’n’drop library. It supports image previews and shows nice progress bars.
- ai/visibilityjs: Wrapper for the Page Visibility API
- usablica/intro.js: A better way for new feature introduction and step-by-step users guide for your website and project.
- jsor/jcarousel: Riding carousels with jQuery.
- googlearchive/chrome-app-samples: Chrome Apps
- share/sharedb: A database frontend for concurrent editing systems
- simple-statistics/simple-statistics: simple statistics for node & browser javascript
- segmentio/analytics.js: The hassle-free way to integrate analytics into any web application.
- messageformat/messageformat.js: ICU MessageFormat for Javascript - i18n Plural and Gender Capable Messages
- twitter/twemoji: Twitter Emoji for Everyone