Awesome JavaScript
by sorrycc · sorrycc/awesome-javascript
Browser-side JavaScript libraries, resources and shiny things.
AA cross-browser library of CSS animations. As easy to use as an easy thing.
TTransitionEnd is an agnostic and cross-browser library to work with transitioned event.
TA new and improved version of particles.js with bug fixes and many new features.
Web Workers: Adding Multi-threading to JavaScript
CBDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
Enzyme is a JavaScript Testing utility for React that makes it easier to assert, manipulate, and traverse your React Components' output.
RSimple and complete React DOM testing utilities that encourage good testing practices.
SA popular HTTP assertion library for testing REST APIs, often used with other testing frameworks like Mocha or Jest
BA suite of continuous benchmarking tools designed to catch performance regressions in CI.
FAn intro page with a full width background image, a bold animated menu and an iOS-like blurred effect behind the navigation.
HA professional front-end template for building fast, robust, and adaptable web apps or sites.
MA front-end template that helps you build fast, modern mobile web apps.
WWasp is a declarative domain-specific language for developing, building, and deploying modern Javascript full-stack web apps with less code.
WAn awesome front-end framework that lets you stay focused on building your site or app while remaining really easy to use.
BA datepicker for @twitter bootstrap forked from Stefan Petre's (of eyecon.ro), improvements by @eternicode.
Dcreates a dropdown menu from which a user can select a range of dates.
Dopen source version of Duet Design System’s accessible date picker, WCAG 2.1 accessibility complaint
PThe mobile-friendly, responsive, and lightweight jQuery date & time input picker.
PA refreshing JavaScript Datepicker — lightweight, no dependencies, modular CSS.
SMaterial design event calendar. Features drag & drop, dark mode, multiple views and more.
TA JavaScript schedule calendar that is full featured. Now your service just got the customizable calendar.
SCode highlighter powered by VS Code TextMate grammars. Accurate, themeable, works in Node or browser, great for JS and TS.
Bfully featured promise library with focus on innovative features and performance.
OProvide a prototype that add support to event listeners (with same behavior of EventTarget from DOMElements available on browsers).
SComposable concurrency abstractions (such as streams, coroutines and Go-like channels) on top of promises, for Node and browser engines.
BA simple code coverage library for JavaScript. Designed to be easy to install and use, for both browser and nodejs.
BA complete, fully tested and documented data structure library written in JavaScript.
IImmutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.
JRefer to the javascript standard data structure library implemented by c++ stl, which supports c++ bidirectional iterator mode.
MA library for using ClojureScript's persistent data structures and supporting API from the comfort of vanilla JavaScript.
library for arranging your HTML5 documents and diagrams using constraint-based optimization techniques
DMulti-Dimensional charting built to work natively with crossfilter rendered with d3.js
FGitHub-inspired simple and modern SVG charts for the web with zero dependencies.
GAn interactive and responsive charting library. Based on the grammar of graphics.
GA lightweight JavaScript graphics library with the intuitive API, based on SVG/VML technology.
JDiagramming library to create static diagrams or fully interactive diagramming tools.
JA plugin for the jQuery JavaScript library to generate small sparkline charts directly in the browser.
MA library optimized for concise, principled data graphics and layouts.
MDiagramming library that enables interactive graph and charting applications to be quickly created that run natively in any major browser that is supported by its vendor.
PThe Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas.
DDay.js 2KB immutable date library alternative to Moment.js with the same modern API.
FLightweight date formatting and parsing (~2KB). Meant to replace parsing and formatting functionality of moment.js.
JA jQuery plugin that makes it easy to support automatically updating fuzzy timestamps (e.g. "4 minutes ago").
TParsing, formatting, and timezones — Tempo is a small tree-shakable library for native Date objects.
TTimezone-enabled JavaScript Date object. Uses Olson zoneinfo files for timezone data.
is a jsdoc parsing library. Coddoc is different in that it is easily extensible by allowing users to add tag and code parsers through the use of coddoc.addTagHandler and coddoc.addCodeHandler. coddoc also parses source code to be used in APIs.
Cis a visual tool for learning and documenting a codebase by putting breadcrumbs in source code.
is an all-in-one API documentation reader with a fast, organized, and consistent interface.
is a quick-and-dirty, hundred-line-long, literate-programming-style documentation generator.
API documentation generator with support for ES2015+ and flow annotation.
Dis a JavaScript documentation generator written with node. Dox no longer generates an opinionated structure or style for your docs, it simply gives you a JSON representation, allowing you to use markdown and JSDoc-style tags.
JAPI documentation generator made for Sencha JavaScript frameworks, but can be used for other frameworks too.
Rbuilds manuals. It converts simple, human readable textfiles to roff for terminal display, and also to HTML for the web.
generates documentation and style guide documents from your stylesheets.
is a Node.js application that generates API documentation from comments in source, using a syntax similar to tools like Javadoc and Doxygen.
Compatibility tables for all ECMAScript 6 features on a variety of environments.
EES2015 [ES6] cheatsheet containing tips, tricks, best practices and code snippets.
TES6 features > ES5. Includes classes, generators, promises, destructuring patterns, default parameters & more.
EAn embeddable JavaScript Markdown editor with split fullscreen editing, live previewing, automatic draft saving, offline support, and more.
JA simple, clean and elegant text editor. Inspired by the awesomeness of Medium.
WOpen source rich text editor based on HTML5 and the progressive-enhancement approach. Uses a sophisticated security concept and aims to generate fully valid HTML5 markup by preventing unmaintainable tag soups and inline styles.
DDropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars.
FA set of JavaScript tools for working with files. Multiupload, drag'n'drop and chunked file upload. Images: crop, resize and auto orientation by EXIF.
FA JavaScript library that can upload anything you throw at it, optimizes images for faster uploads, and offers a great, accessible, silky smooth user experience.
FMultiple file upload plugin with progress-bar, drag-and-drop, direct-to-S3 uploading.
FA JavaScript library providing multiple simultaneous, stable, fault-tolerant and resumable/restartable file uploads via the HTML5 File API.
JFile Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery.
PA JavaScript API for dealing with file uploads it supports features like multiple file selection, file type filtering, request chunking, client side image scaling and it uses different runtimes to achieve this such as HTML 5, Silverlight and Flash.
JHigh-level I/O (loading, parsing, manipulating, serializing, saving) for binary files with declarative syntax for describing file types and data structures.
PA powerful CSV library that supports parsing CSV files/strings and also exporting to CSV.
Complete end-to-end testing framework for anything that runs in a browser and beyond.
DA minimal JavaScript Framework and standalone components for rapid development of sites and SPA's.
IAn HTML5/CSS3 framework used at SAPO for fast and efficient website design and prototyping.
A unit-testing framework for backends working with inversion of control and dependency injection
LLibrary for use in the browser and It indexes JSON documents and provides a simple search interface for retrieving documents that best match text queries.
Open source HTML5 game engine that empowers developers and designers to focus on content.
KKaibanJS is an open-source framework browser-compatibility of orchestration of multi-agent ai systems using a Kanban-inspired architecture.
DReact-based static site generator by Facebook, ideal for content-centric websites.
NReact powered static site generator, and they say "All the tools you need to make the Web. Faster.".
AA JavaScript-tool for synchronizing translation-files, including JSON/YAML/XML and other formats.
TModern javascript i18n localization library based on ES6 tagged templates and the good old GNU gettext.
DEasily add "zoom on hover" functionality to your site's images. Lightweight, no-dependency JavaScript.
PPanolens.js is an event-driven and WebGL based panorama viewer. Lightweight and flexible
AUltra lightweight, usable, beautiful autocomplete with zero dependencies. - https://projects.verou.me/awesomplete/
IjQuery plugin for styling checkboxes and radio-buttons. With skin support.
JMagically convert a simple text input into a cool tag list with this jQuery plugin.
TA jQuery UI plugin to handle multi-tag fields as well as tag suggestions/autocomplete.
JjQuery Hotkeys lets you watch for keyboard events anywhere in your code supporting almost any key combination.
KA JavaScript library for binding keyboard combos without the pain of key codes and key combo conflicts.
CA debug panel built in JavaScript that wraps JavaScript native console object methods and functionality in a panel displayed inside the page.
LMinimal lightweight logging for JavaScript, adding reliable log level methods to wrap any available console.log methods.
Simple logging library with zero dependencies for Deno, Node.js, Bun, browsers, and edge functions.
Universal logging library + Chrome extension; it lets you see all client and server tasks triggered by a user action in a single place.
AThe Node.js Framework highly focused on developer ergonomics, stability and confidence.
Aoffers you the reactive and declarative nature of big frameworks like Vue or React at a much lower cost.
AAngular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.
DMVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers.
Elegant and all-inclusive Node.JS framework for building web applications (TypeScript).
GFree and Open source Web Builder Framework. Next generation tool for building templates without coding.
I🔥 An extremely fast, React-like JavaScript library for building modern user interfaces.
LA graph node engine and editor similar to PD or UDK Blueprints, comes with its own editor in HTML5 Canvas2D.
MA composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications.
MAn ultra-simple, database-everywhere, data-on-the-wire, pure-javascript web framework.
A library for building user interfaces. It's declarative, efficient, and extremely flexible. Works with a Virtual DOM.
RA modular framework for visual programming allows to create node based editor in browser.
SSvelte is a new way to build web applications. It's a compiler that takes your declarative components and converts them into efficient JavaScript that surgically updates the DOM.
WA frontend framework for chillout-mode development 🥤. JSX components on generators, fast mobx-like state management and exclusive cssx style system.
CDeep Learning in JavaScript. Train Convolutional Neural Networks (or ordinary ones) in your browser.
MA CLI tool to transpile trained classic ML models into a native JavaScript code with zero dependencies.
A JavaScript library for training and deploying ML models in the browser and on Node.js.
HHexagonal hierarchical geospatial indexing system ported to javascript by Uber for geospatial visualization.
PA free JavaScript library for making dynamic, interactive maps in modern web browsers.
JjQuery plugin to fire events when user's cursor aims at particular dropdown menu items. For making responsive mega dropdowns like Amazon's.
MThe best jQuery plugin for app look-alike on- and off-canvas menus with sliding submenus for your website and webapp.
Aand Object Explorer - Resources to help figure out what native JavaScript method would be best to use at any given time.
BAn easy-to-read, quick reference for JS best practices, accepted coding standards, and links around the Web.
FMakes a visitor identifier from a browser fingerprint that stays the same in incognito mode and when browser data is purged.
ICreate explorable explanations and interactive storytelling essays. Can be embedded in HTML.
IComponents for interactive scientific writing, reactive documents and explorable explanations.
Learn Javascript online from a diverse range of user ranked online tutorials.
JAlgorithms and data structures implemented in JavaScript with explanations and links to further readings.
LAdds search, sort, filters and flexibility to tables, lists and various HTML elements. Built to be invisible and work on existing HTML.
PA simple parser generator for JavaScript that produces fast parsers with excellent error reporting. Usable from your browser, from the command line, or via JavaScript API.
PA platform detection library that works on nearly all JavaScript platforms.
Learn JavaScript from a community sourced learning roadmap.
SSimplified JavaScript Jargon is a community-driven attempt at explaining the loads of buzzwords making the current JavaScript ecosystem in a few simple words.
SSPOILER ALERT! A happy little jquery plugin to hide spoilers on your site.
A collection of resources about creating, testing and maintaining a large JavaScript code base.
YPossibly the best book written on modern JavaScript, completely readable online for free, or can be bought to support the author.
BExtends the default Bootstrap Modal class. Responsive, stackable, ajax and more.
FA tool that offers a nice and elegant way to add zooming functionality for images, html content and multi-media on your webpages.
JjBox is a powerful and flexible jQuery plugin, taking care of all your popup windows, tooltips, notices and more.
JjQuery plugin for responsive and accessible modal windows and tooltips.
KLightweight, no dependencies, accessibility enabled TypeScript library for creating modal windows.
Sthe JavaScript Fullscreen API, which lets you bring the page or any element into fullscreen. Smoothens out the browser implementation differences, so you don't have to.
IElegant, responsive, flexible and lightweight notification plugin with no dependencies.
PJavaScript notifications for Bootstrap, jQuery UI, and the Web Notifications Draft.
AA lightweight JavaScript library for number, money and currency formatting - fully localisable, zero dependencies.
KA query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.
MTypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns.
OA SQL-friendly ORM for Node.js built on top of Knex.js, with powerful relational support.
PNext-generation ORM for Node.js & TypeScript PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB.
SFeature-rich ORM for modern Node.js and TypeScript PostgreSQL, MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB...
TORM for TypeScript and JavaScript, Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
OAn open-source web desktop platform with a window manager, application APIs, GUI toolkit, filesystem abstractions and much more.
AA lightweight, extendable analytics library designed to work with any third-party analytics provider to track page views, custom events, & identify users.
CA JavaScript function to add live paragraph-, word- and character-counting to an HTML element.
GAutomatically persist your forms' text and select field values locally, until the form is submitted.
DNext-generation package manager that blends the best ideas from Component, Browserify and Go to make organizing and writing front-end code quick and painless.
VCreate front end projects from templates, add dependencies, and automate the resulting projects.
FFinds dead code, duplication, circular dependencies, and complexity hotspots in JavaScript and TypeScript projects.
JOpinionated, no-configuration style guide, style checker, and formatter
JJSHint is a tool that helps to detect errors and potential problems in your JavaScript code.
JHigh-standards, strict & opinionated code quality tool, aiming to keep only good parts of the language.
PPre-evaluate your front end javascript code at build-time
RTrace imports, identify circular dependencies, find unused code, clean node modules — all from a blazing-fast CLI.
IPowerful and easily customizable range slider with many options and skin support.
CDefinitely the ❤️ simplest but ⚡️ strongest state management for react, it is predictable、progressive and efficient.
Re-thinking the JavaScript utility belt, Highland manages synchronous and asynchronous code easily, using nothing more than standard JavaScript and Node-like Streams.
KFRP library for JavaScript inspired by Bacon.js and RxJS with focus on high performance and low memory consumption.
SA framework-agnostic state management library that keeps your app’s state clean and simple. It uses a fine-grained state model, breaking state into independent, manageable chunks.
Online regex tester and debugger for JavaScript. Also supports Python, PHP and PCRE.
HTML/JS based tool for creating, testing, and learning about Regular Expressions.
JJavaScript SDK design guide extracted from work and personal experience.
SStripe Node.js SDK lets you integrate payments, subscriptions, and billing into your JavaScript/TypeScript apps.
AA hybrid smooth scroll setup that combines the performance gains of virtual scroll with the reliability of native scroll.
FA simple and easy to use plugin to create fullscreen scrolling websites (also known as single page websites).
IiScroll is a high performance, small footprint, dependency free, multi-platform JavaScript scroller.
OCreate an Apple-like one page scroller website (iPhone 5S website) with One Page Scroll plugin.
SSimple and tiny JavaScript library to add parallax animations on any images
SStand-alone parallax scrolling library for mobile (Android + iOS) and desktop. No jQuery.
DA DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG.
JSanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist.
Sa jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
SSelectize is the hybrid of a textbox and box. It's jQuery based and it has autocomplete and native-feeling keyboard navigation; useful for tagging, contact lists, etc.
GResponsive and touch-friendly jQuery slider. It's simple, lightweight and fast.
IIt's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com.
JA jQuery plugin for a slider with adaptive colored figcaption and navigation.
PJavaScript image gallery for mobile and desktop, modular, framework independent.
SCSS animation framework for creating responsive sliders, presentations, banners, and other step-based applications.
Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
SJavaScript library for one-directional scrolling with item based navigation support.
VA jQuery plugin to add beautiful fullscreen backgrounds to your webpages. It even allows Slideshows.
FFrappe DataTable is a simple, modern and interactive datatable library for displaying tabular data.
JJspreadsheet is a lightweight vanilla javascript plugin to create amazing web-based interactive tables and spreadsheets compatible with other spreadsheet software.
LLuckysheet is an online spreadsheet like excel that is powerful, simple to configure, and completely open source.
RRevoGrid is a fast, responsive excel like data grid library for modern web applications.
BA caching script and resource loader, similar to basket.js, but with additional k/v interface and localStorage / websql / indexedDB support.
BA script and resource loader for caching & loading scripts with localStorage.
JA simple, lightweight jQuery plugin for reading, writing and deleting cookies.
LOffline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API.
PBrowser PostgreSQL Playground, no server, just client and pglite (postgresql wasm)
PKeep the type of storage value unchanged and change array and object directly. Supports listening to the changes and setting expires.
SLocalStorage wrapper for all browsers without using cookies or flash. Uses localStorage, globalStorage, and userData behavior under the hood.
TStreaming layout service for front-end microservices, inspired by Facebook's BigPipe.
UEasier than regex string matching patterns for urls and other strings. Turn strings into data or data into strings.
An Extension to the popular Bootstrap framework for creating tables that fit the style of your site with no need for additional markup.
(jQuery plug-in) It is a highly flexible tool, based upon the foundations of progressive enhancement, and will add advanced interaction controls to any HTML table.
F(jQuery plug-in) lock any table's header while scrolling within the body. Works on any table and requires no custom html or css.
A filterable, sortable, grid layout library. Can implement Masonry, Packery, and other layouts.
A grid layout library that uses a bin-packing algorithm. Useable for draggable layouts.
(jQuery plug-in) An extremely flexible library that create tables with a range of interactive features from any JSON data source or existing HTML table.
J< 1KB lightweight, fast & powerful JavaScript templating engine with zero dependencies.
MA fast, lightweight, HTML-based templating engine for Node.js and the browser with async, streaming, custom tags and CommonJS modules as compiled output.
S(Archived) A simple, powerful, and extendable Node.js and browser-based JavaScript template engine.
DPowerful yet light-weight, vanilla JavaScript engine to drive the user's focus across the page
FSet a spotlight focus on DOM element adding a overlay layer to the rest of the page.
HA framework to make it easy for developers to add product tours to their pages.
IA better way for new feature introduction and step-by-step users guide for your website and project.
A static type checker for JavaScript with a bias on type inference an strong type system.
Hruntime type checking for JavaScript functions using Haskell-alike Hindley Milner type signatures.
BjQuery plugin, calculates the font-size and word-spacing needed to match a line of text to a specific width.
FWeb typography at its finest: font-size and line-height based on element width.
LA lightweight, easy to use JavaScript injector for radical Web Typography.
SAdd a super simple rotating text to your website with little to no markup.
The best jQuery plugin to validate form fields. Formerly BootstrapValidator.
Open Source HTML5 Web Audio Library. Design your web audio player, the way you want. No dependencies required.
FFFmpeg optimized for in-browser use: minimal size for faster loading, asm.js, performance tunings, etc.
HA JavaScript library that implements an HTTP Live Streaming client. It relies on HTML5 video and MediaSource Extensions for playback.
MHTML5 or player with Flash and Silverlight shims that mimics the HTML5 MediaElement API, enabling a consistent UI in all browsers.
PPlay'em is a JavaScript component that manages a music/video track queue and plays a sequence of songs by embedding several players in a HTML DIV including Youtube, Soundcloud and Vimeo.
PPrettier embeds for your YouTubes - with nice options like high-res preview images, advanced customization of embed options, and optional FitVids support.
SA library to make working with audio on the web easier. It provides a consistent API for playing audio in different browsers.
AA JavaScript library for adding voice commands to your site, using speech recognition.
CClooney is an actor library for the web. Use workers without thinking about workers.
CComlink is a tiny library (1.1kB), that removes the mental barrier of thinking about postMessage and hides the fact that you are working with workers.
PRelocate resource intensive third-party scripts off of the main thread and into a web worker.
TOffload CPU-intensive tasks to worker threads in node.js, web browsers and electron using one uniform API.
WAn in-progress implementation of the DOM API intended to run within a Web Worker.
WMoves a module into a Web Worker, automatically reflecting exported functions as asynchronous proxies.
A
A
B
F
J
O
O
R
R
S
V
W
B
B
D
G
J
P
P
S
T
T
V
E
P
P
S
M
C
F
M
B
B
F
P
R
T
U
W
F
R
H
P
C
C
C
P
R
T
V
B
A
Q
S
W
I
J
H
N
A
B
C
C
C
C
C
D
D
D
E
E
E
F
F
G
H
M
N
P
R
R
S
S
T
T
T
V
V
V
C
D
D
L
M
M
T
B
E
J
B
E
E
A
B
B
C
C
E
E
E
J
M
P
P
Q
R
S
S
T
T
T
V
D
J
A
D
E
J
M
P
Q
T
T
E
F
F
L
L
M
P
R
R
S
S
U
W
A
G
G
L
N
H
I
P
C
L
M
A
F
P
T
V
J
K
K
M
E
H
L
L
M
R
S
S
C
L
M
N
P
P
P
S
S
T
C
L
A
C
C
D
D
E
E
F
H
J
K
K
L
M
N
R
R
R
R
R
S
T
V
W
B
D
J
M
S
S
C
G
J
K
L
M
J
S
S
A
B
B
B
C
D
D
E
E
E
E
E
F
G
G
H
I
J
J
J
J
J
L
M
M
O
P
P
S
S
W
B
C
C
J
J
L
S
S
S
A
C
F
G
H
K
N
P
R
S
T
W
H
N
N
N
S
T
C
N
D
K
C
D
F
B
C
E
J
S
B
E
H
J
J
J
P
J
N
R
B
M
R
C
D
N
P
C
I
K
N
P
P
S
T
T
W
Z
O
S
C
E
H
J
L
P
P
R
S
S
S
P
S
X
C
B
B
E
F
F
S
S
S
S
H
A
B
C
C
C
D
D
D
H
J
J
L
N
P
S
H
J
P
S
S
U
U
U
V
F
J
D
E
H
M
P
T
X
T
T
H
Q
S
T
T
T
B
J
T
Y
Z
C
J
N
S
F
F
I
J
V
V
V
V
C
F
F
P
P
R
V
O
T
V
W
S
W