awesome-javascript
🐢 A collection of awesome browser-side JavaScript libraries, resources and shiny things.
https://github.com/sorrycc/awesome-javascript
Last synced: 38 minutes ago
JSON representation
-
MVC Frameworks and Libraries
-
Runner
- aurelia - A JavaScript client framework for mobile, desktop and web.
- FoalTS - Elegant and all-inclusive Node.JS framework for building web applications (TypeScript).
- Blockly - A library that adds a visual code editor to web and mobile apps by Google.
- knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript.
- espresso.js - A minimal JavaScript library for crafting user interfaces.
- hyperapp - 1kb JavaScript library for building frontend applications.
- preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
- nativescript - Build truly native cross-platform iOS and Android apps with JavaScript.
- react-native - A framework for building native apps with React.
- thorax - Strengthening your Backbone.
- rivets - Lightweight and powerful data binding + templating solution.
- derby - MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers.
- meteor - An ultra-simple, database-everywhere, data-on-the-wire, pure-javascript web framework.
- GrapesJS - Free and Open source Web Builder Framework. Next generation tool for building templates without coding.
- Million - <1kb compiler-focused virtual DOM. It's fast!
- marionette - A composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications.
- ripple - A tiny foundation for building reactive views.
- derby-awesome - A collection of awesome derby components
- way.js - Simple, lightweight, persistent two-way databinding.
- jsblocks - jsblocks is better MV-ish framework.
- Lucia - 3kb library for tiny web apps.
- angular.js - HTML enhanced for web apps. (deprecated)
- Adonis - The Node.js Framework highly focused on developer ergonomics, stability and confidence.
- Rete.js - A modular framework for visual programming allows to create node based editor in browser.
- litegraph.js - A graph node engine and editor similar to PD or UDK Blueprints, comes with its own editor in HTML5 Canvas2D.
- Drawflow - This allow you to create data flows easily and quickly.
- Whatsup - A frontend framework for chillout-mode development 🥤. JSX components on generators, fast mobx-like state management and exclusive cssx style system.
- Remult - A CRUD framework for full-stack TypeScript.
- aurelia - A JavaScript client framework for mobile, desktop and web.
- react - A library for building user interfaces. It's declarative, efficient, and extremely flexible. Works with a Virtual DOM.
- mithril.js - Mithril is a client-side MVC framework (Light-weight, Robust, Fast).
- FoalTS - Elegant and all-inclusive Node.JS framework for building web applications (TypeScript).
- angular - Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.
- backbone - Give your JS App some Backbone with Models, Views, Collections, and Events.
- ember.js - A JavaScript framework for creating ambitious web applications.
- ractive - Next-generation DOM manipulation.
- vue - Intuitive, fast & composable MVVM for building interactive interfaces.
- svelte - Svelte 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.
- spine - Lightweight MVC library for building JavaScript applications.
- canjs - Can do JS, better, faster, easier.
- riot - React-like library, but with very small size.
- chaplin - An architecture for JavaScript applications using the Backbone.js library.
- feathers - A minimalist real-time JavaScript framework for tomorrow's apps.
- Keo - Functional stateless React components with Shadow DOM support.
- atvjs - Blazing fast Apple TV application development using pure JavaScript.
- Alpine.js - offers you the reactive and declarative nature of big frameworks like Vue or React at a much lower cost.
- inferno - 🔥 An extremely fast, React-like JavaScript library for building modern user interfaces.
-
-
Game Engines
-
Runner
- A-Frame - Make WebVR.
- Cocos - Open Source Cross-Platform Game Development Framework.
- Impact - Impact - HTML5 Canvas & JavaScript Game Engine.
- GDevelop - Free and Easy Game-Making App.
- Kaboom.js - A game programming library that helps you make games fast and fun.
- melonJS - Open source HTML5 game engine that empowers developers and designers to focus on content.
- Phaser - Phaser - A fast, fun and free open source HTML5 game framework.
- PixiJS - The HTML5 Creation Engine.
- PlayCanvas - PlayCanvas WebGL Game Engine.
- Cocos - Open Source Cross-Platform Game Development Framework.
- Impact - Impact - HTML5 Canvas & JavaScript Game Engine.
- GDevelop - Free and Easy Game-Making App.
- Kaboom.js - A game programming library that helps you make games fast and fun.
- melonJS - Open source HTML5 game engine that empowers developers and designers to focus on content.
- PixiJS - The HTML5 Creation Engine.
- PlayCanvas - PlayCanvas WebGL Game Engine.
- Matter.js - A 2D rigid body JavaScript physics engine.
- Phaser - Phaser - A fast, fun and free open source HTML5 game framework.
-
-
Data Visualization
-
Runner
- dimple.js - Easy charts for business analytics powered by d3.
- G6 - A graph visualization engine.
- cola.js - library for arranging your HTML5 documents and diagrams using constraint-based optimization techniques
- echarts - Enterprise Charts.
- visjs - Multiple Libraries for dynamic, browser-based data visualization.
- two.js - A renderer agnostic two-dimensional drawing api for the web.
- envisionjs - Dynamic HTML5 visualization.
- heatmap.js - JavaScript Library for HTML5 canvas based heatmaps.
- GraphicsJS - A lightweight JavaScript graphics library with the intuitive API, based on SVG/VML technology.
- g.raphael - Charts for Raphaël.
- sigma.js - A JavaScript library dedicated to graph drawing.
- Cytoscape.js - A fully featured graph theory library.
- jointjs - Diagramming library to create static diagrams or fully interactive diagramming tools.
- amchart - js/).
- Infographic - A next-generation declarative infographic visualization engine.
- chartist-js - Simple responsive charts.
- epoch - A general purpose real-time charting library.
- c3 - D3-based reusable chart library.
- BabylonJS - A framework for building 3D games with HTML 5 and WebGL.
- recharts - Redefined chart library built with React and D3.
- Chart.js - Simple HTML5 Charts using the <canvas> tag.
- paper.js - The Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas.
- peity - Progressive <svg> bar, line and pie charts.
- raphael - JavaScript Vector Library.
- arbor - A graph visualization library using web workers and jQuery.
- cubism - A D3 plugin for visualizing time series.
- rickshaw - JavaScript toolkit for creating interactive real-time graphs.
- flot - Attractive JavaScript charts for jQuery.
- morris.js - Pretty time-series line graphs.
- nvd3 - Build re-usable charts and chart components for d3.js.
- jquery.sparkline - A plugin for the jQuery JavaScript library to generate small sparkline charts directly in the browser.
- d3-cloud - Create word clouds in JavaScript.
- d4 - A friendly reusable charts DSL for D3.
- vizzu - Library for animated data visualizations and data stories.
- metrics-graphics - A library optimized for concise, principled data graphics and layouts.
- fabric.js - JavaScript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser.
- svg.js - A lightweight library for manipulating and animating SVG.
- d3 - A JavaScript visualization library for HTML and SVG.
- three.js - JavaScript 3D library.
- dc.js - Multi-Dimensional charting built to work natively with crossfilter rendered with d3.js
- vega - A visualization grammar.
- trianglify - Low poly style background generator with d3.js.
- mxGraph - Diagramming 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.
- Frappe Charts - GitHub-inspired simple and modern SVG charts for the web with zero dependencies.
- Frappe Gantt - A simple, interactive, modern gantt chart library for the web.
- G2 - A highly interactive data-driven visualization grammar for statistical charts.
- G2Plot - An interactive and responsive charting library. Based on the grammar of graphics.
-
-
Documentation
-
Runner
- docco - and-dirty, hundred-line-long, literate-programming-style documentation generator.
- sphinx
- documentation.js - API documentation generator with support for ES2015+ and flow annotation.
- Ronn
- dox - style tags.
- Beautiful docs
- jsduck - API documentation generator made for Sencha JavaScript frameworks, but can be used for other frameworks too.
- docco - and-dirty, hundred-line-long, literate-programming-style documentation generator.
- styledocco
- YUIDoc
- coddoc
- sphinx
- documentation.js - API documentation generator with support for ES2015+ and flow annotation.
- DevDocs - in-one API documentation reader with a fast, organized, and consistent interface.
- jsdox
- ESDoc
- codecrumbs
-
-
Reactive Programming
-
Runner
- Cycle.js - A functional and reactive JavaScript library for cleaner code.
- MobX - TFRP library for simple, scalable state management.
- Most.js - high performance FRP library.
- Bacon - FRP (functional reactive programming) library for JavaScript.
- Highland - Re-thinking the JavaScript utility belt, Highland manages synchronous and asynchronous code easily, using nothing more than standard JavaScript and Node-like Streams.
- stunk - 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.
- Cycle.js - A functional and reactive JavaScript library for cleaner code.
- RxJS - A reactive programming library for JavaScript.
- Kefir - FRP library for JavaScript inspired by Bacon.js and RxJS with focus on high performance and low memory consumption.
- concent - Definitely the ❤️ simplest but ⚡️ strongest state management for react, it is predictable、progressive and efficient.
-
-
Log
-
Runner
- minilog - side logging with Stream-API backends.
- console.log-wrapper - Log to the console in any browser with clarity.
- minilog - side logging with Stream-API backends.
- storyboard - Universal logging library + Chrome extension; it lets you see all client and server tasks triggered by a user action in a single place.
- LogTape - Simple logging library with zero dependencies for Deno, Node.js, Bun, browsers, and edge functions.
- log - Console.log with style.
- Conzole - A debug panel built in JavaScript that wraps JavaScript native console object methods and functionality in a panel displayed inside the page.
- loglevel - Minimal lightweight logging for JavaScript, adding reliable log level methods to wrap any available console.log methods.
-
-
Machine Learning
-
Runner
- ml5.js - Friendly Machine Learning for the Web.
- m2cgen - A CLI tool to transpile trained classic ML models into a native JavaScript code with zero dependencies.
- JS-PyTorch - GPU accelerated PyTorch in JavaScript.
- ConvNetJS - Deep Learning in JavaScript. Train Convolutional Neural Networks (or ordinary ones) in your browser.
- DN2A - Digital Neural Networks Architecture.
- Brain.js - Neural networks in JavaScript.
- Mind.js - A flexible neural network library.
- Synaptic.js - Architecture-free neural network library for node.js and the browser.
- TensorFlow.js - A JavaScript library for training and deploying ML models in the browser and on Node.js.
- Synapses - Lightweight cross-platform Neural Network library.
-
-
Sliders
-
Runner
- slidesJs - Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
- slidr - add some slide effects.
- Glide.js - Responsive and touch-friendly jQuery slider. It's simple, lightweight and fast.
- Strut - Strut - An Impress.js and Bespoke.js Presentation Editor
- slick - The last carousel you'll ever need.
- reveal.js - A framework for easily creating beautiful presentations using HTML.
- slidesJs - Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
- Swiper - Mobile touch slider and framework with hardware accelerated transitions.
- vegas - A jQuery plugin to add beautiful fullscreen backgrounds to your webpages. It even allows Slideshows.
- jQuery.adaptive-slider - A jQuery plugin for a slider with adaptive colored figcaption and navigation.
- bespoke.js - DIY Presentation Micro-Framework
- Flickity - Touch, responsive, flickable galleries.
- FlexSlider - An awesome, fully responsive jQuery slider plugin.
- sly - JavaScript library for one-directional scrolling with item based navigation support.
- Sequence - CSS animation framework for creating responsive sliders, presentations, banners, and other step-based applications.
- 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.
- PhotoSwipe - JavaScript image gallery for mobile and desktop, modular, framework independent.
- jcSlider - A responsive slider jQuery plugin with CSS animations.
- basic-jquery-slider - Simple to use, simple to theme, simple to customise.
- Embla Carousel - An extensible low level carousel for the web, written in TypeScript.
-
-
Frameworks
-
Other
- w2ui - A set of jQuery plugins for front-end development of data-driven web applications.
- DataFormsJS - A minimal JavaScript Framework and standalone components for rapid development of sites and SPA's.
- EHTML - HTML Framework that allows you not to write JavaScript code.
- Semantic UI - UI Kit with lots of themes and elements.
- w2ui - A set of jQuery plugins for front-end development of data-driven web applications.
- fluidity - The worlds smallest fully-responsive css framework.
- Ink - An HTML5/CSS3 framework used at SAPO for fast and efficient website design and prototyping.
-
-
Animations
-
Other
- AutoAnimate - Add motion to your apps with a single line of code.
- animate.css - A cross-browser library of CSS animations. As easy to use as an easy thing.
- particles.js - A lightweight JavaScript library for creating particles.
- particles-bg - A lightweight React particles animation background component.
- barbajs - It helps you create fluid and smooth transitions between your website's pages.
- bounce.js - Create tasty CSS3 powered animations in no time.
- Anime.js - A JavaScript animation engine.
- Mo.js - Motion graphics toolbelt for the web.
- TransitionEnd - TransitionEnd is an agnostic and cross-browser library to work with transitioned event.
- the-cube - The Cube is an experiment with CSS3 transitions.
- Effeckt.css - A Performant Transitions and Animations Library.
- animatable - One property, two values, endless possibilities.
- Dynamic.js - JavaScript library to create physics-based CSS animations.
- velocity - Accelerated JavaScript animation.
- jquery.transit - Super-smooth CSS3 transformations and transitions for jQuery.
- textillate - A simple plugin for CSS3 text animations.
- move.js - CSS3 backed JavaScript animation framework.
- tsParticles - A new and improved version of particles.js with bug fixes and many new features.
- AutoAnimate - Add motion to your apps with a single line of code.
- GreenSock-JS - High-performance HTML5 animations that work in all major browsers.
- shuffle-images - The Simplest Way to shuffle through images in a Creative Way.
- smoothState.js - Unobtrusive page transitions with jQuery.
- typicaljs - Animated typing in ~400 bytes 🐡 of JavaScript
-
-
Misc
-
Other
- Logical Or Not - A game about JavaScript specificities.
- Superhero.js - A collection of resources about creating, testing and maintaining a large JavaScript code base.
- Peg.js - A 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.
- You Don't Know JS - Possibly the best book written on modern JavaScript, completely readable online for free, or can be bought to support the author.
- braziljs/js-the-right-way - An easy-to-read, quick reference for JS best practices, accepted coding standards, and links around the Web.
- JSbooks - Directory of free JavaScript ebooks.
- emijrp/awesome-awesome
- enaqx/awesome-react
- echo - Lazy-loading images with data-* attributes.
- platform.js - A platform detection library that works on nearly all JavaScript platforms.
- json3 - A modern JSON implementation compatible with nearly all JavaScript platforms.
- spoiler-alert - SPOILER ALERT! A happy little jquery plugin to hide spoilers on your site.
- jquery.vibrate.js - Vibration API Wrappers
- apvarun/awesome-bun
- bayandin/awesome-awesomeness
- bolshchikov/js-must-watch
- Roadmap.sh JavaScript Roadmap - Learn JavaScript from a community sourced learning roadmap.
- Clipboard.js - "Copy to clipboard" without Flash or use of Frameworks.
- ky - Tiny and elegant HTTP client based on the browser Fetch API.
- lune - Library to calculate the phases of the moon accurately.
- picturefill - A responsive image polyfill for <picture>, srcset, sizes.
- BitSet.js - A JavaScript Bit-Vector implementation.
- list.js - Adds search, sort, filters and flexibility to tables, lists and various HTML elements. Built to be invisible and work on existing HTML.
- mixitup - MixItUp - A Filter & Sort Plugin.
- grid - Drag and drop library for two-dimensional, resizable and responsive lists.
- jquery-match-height - a responsive equal heights plugin for jQuery.
- SurveyJS - SurveyJS is a JavaScript Survey and Form Library. https://surveyjs.io/
- Array Explorer - Resources to help figure out what native JavaScript method would be best to use at any given time.
- Fcal - Math expression evaluator.
- Superhero.js - A collection of resources about creating, testing and maintaining a large JavaScript code base.
- SJSJ - Simplified JavaScript Jargon is a community-driven attempt at explaining the loads of buzzwords making the current JavaScript ecosystem in a few simple words.
- How to Write an Open Source JavaScript Library - A comprehensive guide through a set of steps to publish a JavaScript open source library.
- JavaScript Tutorials - Learn Javascript online from a diverse range of user ranked online tutorials.
- Functional-Light JavaScript - Pragmatic, balanced FP in JavaScript.
- Clean Code JavaScript - Clean Code concepts adapted for JavaScript.
- sotayamashita/awesome-css
- sindresorhus/awesome
- jnv/list
- gianarb/angularjs
- peterkokot/awesome-dojo
- addyosmani/es6-tools
- ericdouglas/ES6-Learning
- obetomuniz/awesome-webcomponents
- willianjusten/awesome-svg
- davidsonfellipe/awesome-wpo
- instanceofpro/awesome-backbone
- peterkokot/awesome-jquery
- davidyezsetz/you-might-not-need-jquery-plugins
- MaximAbramchuck/awesome-interviews
- denolib/awesome-deno
- .
- javascript-algorithms - Algorithms and data structures implemented in JavaScript with explanations and links to further readings.
- FingerprintJS - Makes a visitor identifier from a browser fingerprint that stays the same in incognito mode and when browser data is purged.
- jsemu - A list of emulators written in the JavaScript programming language.
-
-
Testing Frameworks
-
Frameworks
- Suites - A unit-testing framework for backends working with inversion of control and dependency injection
- qunit - An easy-to-use JavaScript Unit Testing framework.
- TestCafe - Automated browser testing for the modern web development stack.
- ava - 🚀 Futuristic JavaScript test runner
- prova - Node & Browser test runner based on Tape and Browserify
- jest - Painless JavaScript Unit Testing.
- tape - Tap-producing test harness for node and browsers.
- mocha - Simple, flexible, fun JavaScript test framework for node.js & the browser.
- jasmine - DOM-less simple JavaScript testing framework.
- DalekJS - Automated cross browser functional testing with JavaScript
- Protractor - Protractor is an end-to-end test framework for AngularJS applications.
- Cypress - Complete end-to-end testing framework for anything that runs in a browser and beyond.
- WebdriverI/O - Next-gen browser and mobile automation test framework for Node.js
-
Runner
- webdriverio - Next-gen WebDriver test automation framework for Node.js.
- taiko - A Node.js library with a simple API to automate Chromium based browsers.
- slimerjs - A PhantomJS-like tool running Gecko.
- phantomjs - Scriptable Headless WebKit.
- casperjs - Navigation scripting & testing utility for PhantomJS and SlimerJS.
- zombie - Insanely fast, full-stack, headless browser testing using node.js.
- totoro - A simple and stable cross-browser testing tool.
- intern - A next-generation code testing stack for JavaScript.
- karma - Spectacular Test Runner for JavaScript.
- nightwatch - UI automated testing framework based on node.js and selenium webdriver.
- puppeteer - Headless Chrome Node.js API by official Google Chrome team.
- Playwright - Node.js library to automate Chromium, Firefox and WebKit with a single API.
-
Assertion
- Enzyme - Enzyme is a JavaScript Testing utility for React that makes it easier to assert, manipulate, and traverse your React Components' output.
- react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
- expect.js - Minimalistic BDD-style assertions for Node.JS and the browser.
- Sinon.JS - Test spies, stubs, and mocks for JavaScript.
- proxyquire - Stub nodejs's require.
- Supertest - A popular HTTP assertion library for testing REST APIs, often used with other testing frameworks like Mocha or Jest
- Pocket Mocker - In-browser visual network mocking tool, supports fetch/XHR interception.
- chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
-
Coverage
-
-
Package Managers
- spm - Brand new static package manager.
- jam - A package manager using a browser-focused and RequireJS compatible repository.
- volo - Create front end projects from templates, add dependencies, and automate the resulting projects.
- Bower - A package manager for the web.
- bun - Bun is a fast JavaScript all-in-one toolkit.
- component - Client package management for building better web applications.
- npm - npm is the package manager for JavaScript.
- yarn - Fast, reliable, and secure dependency management.
- Ender - The no-library library.
- Duo - Next-generation package manager that blends the best ideas from Component, Browserify and Go to make organizing and writing front-end code quick and painless.
- jspm - Frictionless browser package management.
- pnpm - Fast, disk space efficient package manager.
-
Web Worker
-
Runner
- workly - A really simple way to move a function or class to a web worker.
- workerpool - Offload tasks to a pool of workers on node.js and in the browser.
- clooney - Clooney is an actor library for the web. Use workers without thinking about workers.
- partytown - Relocate resource intensive third-party scripts off of the main thread and into a web worker.
- comlink - Comlink 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.
- greenlet - Move an async function into its own thread.
- workerize - Moves a module into a Web Worker, automatically reflecting exported functions as asynchronous proxies.
- worker-dom - An in-progress implementation of the DOM API intended to run within a Web Worker.
- threads.js - Offload CPU-intensive tasks to worker threads in node.js, web browsers and electron using one uniform API.
- stockroom - Offload your store management to a worker easily.
-
-
Form Widgets
-
Input
- typeahead.js - A fast and fully-featured autocomplete library.
- tag-it - A jQuery UI plugin to handle multi-tag fields as well as tag suggestions/autocomplete.
- At.js - Add GitHub like mentions autocomplete to your application.
- Ion.CheckRadio - jQuery plugin for styling checkboxes and radio-buttons. With skin support.
- Placeholders.js - A JavaScript polyfill for the HTML5 placeholder attribute.
- fancyInput - Makes typing in input fields fun with CSS3 effects.
- vanilla-masker - A pure JavaScript mask input.
- awesomplete - Ultra lightweight, usable, beautiful autocomplete with zero dependencies. - https://projects.verou.me/awesomplete/
- jQuery-Tags-Input - Magically convert a simple text input into a cool tag list with this jQuery plugin.
-
Calendar
- fullcalendar - Full-sized drag & drop event calendar (jQuery plugin).
- Pikaday - A refreshing JavaScript Datepicker — lightweight, no dependencies, modular CSS.
- tui.calendar - A JavaScript schedule calendar that is full featured. Now your service just got the customizable calendar.
- Schedule-X - Material design event calendar. Features drag & drop, dark mode, multiple views and more.
- pickadate.js - The mobile-friendly, responsive, and lightweight jQuery date & time input picker.
- rome - A customizable date (and time) picker. Dependency free, opt-in UI.
- Date Range Picker - creates a dropdown menu from which a user can select a range of dates.
- Duet Date Picker - open source version of Duet Design System’s accessible date picker, WCAG 2.1 accessibility complaint
-
Select
- chosen - A library for making long, unwieldy select boxes more friendly.
- selectize.js - Selectize is the hybrid of a textbox and `<select>` box. It's jQuery based and it has autocomplete and native-feeling keyboard navigation; useful for tagging, contact lists, etc.
- select2 - a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
-
Other
- stretchy - Form element autosizing, the way it should be.
- form - jQuery Form Plugin.
- Garlic.js - Automatically persist your forms' text and select field values locally, until the form is submitted.
- Countable - A JavaScript function to add live paragraph-, word- and character-counting to an HTML element.
- card - Make your credit card form better in one line of code.
- analytics - A lightweight, extendable analytics library designed to work with any third-party analytics provider to track page views, custom events, & identify users.
- dat.GUI - A lightweight gui controller for changing variables in JavaScript.
-
File Uploader
- filepond - A JavaScript library that can upload anything you throw at it, optimizes images for faster uploads, and offers a great, accessible, silky smooth user experience.
- dropzone - Dropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars.
- jQuery-File-Upload - File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery.
- flow.js - A JavaScript library providing multiple simultaneous, stable, fault-tolerant and resumable/restartable file uploads via the HTML5 File API.
- fine-uploader - Multiple file upload plugin with progress-bar, drag-and-drop, direct-to-S3 uploading.
- FileAPI - A set of JavaScript tools for working with files. Multiupload, drag'n'drop and chunked file upload. Images: crop, resize and auto orientation by EXIF.
- plupload - A 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.
-
-
Files
-
Runner
- jsPDF - JavaScript PDF generation.
- Papa Parse - A powerful CSV library that supports parsing CSV files/strings and also exporting to CSV.
- PDF.js - PDF Reader in JavaScript.
- jBinary - High-level I/O (loading, parsing, manipulating, serializing, saving) for binary files with declarative syntax for describing file types and data structures.
- diff2html - Git diff output parser and pretty HTML generator.
-
-
Storage
-
Runner
- jStorage - jStorage is a simple key/value database to store data on browser side.
- cross-storage - Cross domain local storage, with permissions.
- basket.js - A script and resource loader for caching & loading scripts with localStorage.
- bag.js - A caching script and resource loader, similar to basket.js, but with additional k/v interface and localStorage / websql / indexedDB support.
- pouchdb - Javascript db inspired by Apache CouchDB to run well within the browser.
- datavore - A small, fast, in-browser database engine written in JavaScript.
- jquery-cookie - A simple, lightweight jQuery plugin for reading, writing and deleting cookies.
- awesome-web-storage - Everything you need to know about client-side storage.
- Dexie.js - Dexie.js is a wrapper library for indexedDB.
- PostgreSQL Browser - Browser PostgreSQL Playground, no server, just client and pglite (postgresql wasm)
- js-cookie - A simple, lightweight JavaScript API for handling browser cookies.
- Cookies - JavaScript Client-Side Cookie Manipulation Library.
- sql.js - SQLite compiled to JavaScript through Emscripten.
- crumbsjs - A lightweight vanilla ES6 cookies and local storage JavaScript library.
- proxy-web-storage - Keep the type of storage value unchanged and change array and object directly. Supports listening to the changes and setting expires.
- Hoodie - Offline First backend to work in browser without internet connectivity.
- NeDB - Embedded Persistent database for Browsers, nw.js, electron.
- store.js - LocalStorage wrapper for all browsers without using cookies or flash. Uses localStorage, globalStorage, and userData behavior under the hood.
- localForage - Offline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API.
- DB.js - Promise based IndexDB Wrapper library.
- Lovefield - Lovefield is a relational database for web apps, By Google.
- proxy-web-storage - Keep the type of storage value unchanged and change array and object directly. Supports listening to the changes and setting expires.
- basil.js - The missing JavaScript smart persistent layer.
- lawnchair.js - Simple client-side JSON storage.
-
-
Validation
-
Runner
- jquery-validation - jQuery Validation Plugin.
- Parsley.js - Validate your forms, frontend, without writing a single line of JavaScript.
- FormValidation - The best jQuery plugin to validate form fields. Formerly BootstrapValidator.
- is.js - Check types, regexps, presence, time and more.
- Funval - Data validation using functions interfaces (support TypeScript).
- vest - 🦺 Declarative form validation framework inspired by unit testing.
- validator.js - String validation and sanitization.
- validate.js - Lightweight JavaScript form validation library inspired by CodeIgniter.
- validatr - Cross Browser HTML5 Form Validation.
- FieldVal - multipurpose validation library. Supports both sync and async validation.
-
-
Tips
-
Other
- tooltipster - A jQuery tooltip plugin.
- toolbar - A tooltip style toolbar jQuery plugin
- tipsy - Facebook-style tooltips plugin for jQuery.
- opentip - An open source JavaScript tooltip based on the prototype framework.
- qTip2 - Pretty powerful tooltips.
- simptip - A simple CSS tooltip made with Sass.
- hint.css - A tooltip library in CSS for your lovely websites.
-
-
Modals and Popups
-
Other
- screenfull.js - the 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.
- fancyBox - A tool that offers a nice and elegant way to add zooming functionality for images, html content and multi-media on your webpages.
- lightGallery - A customizable, modular, responsive, lightbox gallery plugin for jQuery.
- swipebox - A touchable jQuery lightbox
- Magnific-Popup - Light and responsive lightbox script with focus on performance.
- jquery-popbox - jQuery PopBox UI Element.
- jquery.avgrund.js - A jQuery plugin with new modal concept for popups.
- vex - A modern dialog library which is highly configurable and easy to style.
- bootstrap-modal - Extends the default Bootstrap Modal class. Responsive, stackable, ajax and more.
- jquery-popup-overlay - jQuery plugin for responsive and accessible modal windows and tooltips.
- jBox - jBox is a powerful and flexible jQuery plugin, taking care of all your popup windows, tooltips, notices and more.
- css-modal - A modal built out of pure CSS.
- SweetAlert - An awesome replacement for JavaScript's alert.
- SweetAlert2 - An awesome replacement for JavaScript's alert.
- baguetteBox.js - Simple and easy to use lightbox script written in pure JavaScript.
- colorbox - A light-weight, customizable lightbox plugin for jQuery.
- keukenhof - Lightweight, no dependencies, accessibility enabled TypeScript library for creating modal windows.
-
-
Gesture
-
Other
- Dragula - Drag and drop so simple it hurts.
- hammer.js - A JavaScript library for multi-touch gestures.
- touchemulator - Emulate touch input on your desktop.
-
-
Maps
-
Other
- jqvmap - jQuery Vector Map Library.
- Leaflet - JavaScript library for mobile-friendly interactive maps.
- gmaps - The easiest way to use Google Maps.
- mapbox.js - Mapbox JavaScript API, a Leaflet Plugin.
- H3js - Hexagonal hierarchical geospatial indexing system ported to javascript by Uber for geospatial visualization.
- Cesium - Open Source WebGL virtual globe and map engine.
- polymaps - A free JavaScript library for making dynamic, interactive maps in modern web browsers.
- kartograph.js - Open source JavaScript renderer for Kartograph SVG maps.
- OpenLayers3 - A high-performance, feature-packed library for all your mapping needs.
-
-
Templating Engines
-
Runner
- mustache.js - Minimal templating with {{mustaches}} in JavaScript.
- nunjucks - A rich and powerful templating language for JavaScript from Mozilla.
- dustjs - Asynchronous templates for the browser and node.js.
- hmpl - Server-oriented customizable templating for JavaScript.
- hogan.js - A compiler for the Mustache templating language.
- doT - The fastest + concise JavaScript template engine for nodejs and browsers.
- JavaScript-Templates - < 1KB lightweight, fast & powerful JavaScript templating engine with zero dependencies.
- handlebars.js - An extension to the Mustache templating language.
- hmpl - Server-oriented customizable templating for JavaScript.
- eco - Embedded CoffeeScript templates.
- t.js - A tiny JavaScript templating framework in ~400 bytes gzipped.
- Pug - Robust, elegant, feature rich template engine for nodejs. (formerly known as Jade)
- EJS - Effective JavaScript templating.
- xtemplate - eXtensible Template Engine lib for node and the browser
- marko - A fast, lightweight, HTML-based templating engine for Node.js and the browser with async, streaming, custom tags and CommonJS modules as compiled output.
- swig - (Archived) A simple, powerful, and extendable Node.js and browser-based JavaScript template engine.
-
-
Spreadsheet
-
Runner
- Luckysheet - Luckysheet is an online spreadsheet like excel that is powerful, simple to configure, and completely open source.
- Frappe Datatable - Frappe DataTable is a simple, modern and interactive datatable library for displaying tabular data.
- RevoGrid - RevoGrid is a fast, responsive excel like data grid library for modern web applications.
- HANDSONTABLE - Handsontable is a JavaScript/HTML5 Spreadsheet Library for Developers
- Jspreadsheet CE - Jspreadsheet is a lightweight vanilla javascript plugin to create amazing web-based interactive tables and spreadsheets compatible with other spreadsheet software.
-
-
Editors
-
Runner
- CodeMirror - In-browser code editor.
- Everright-formEditor - A visual drag-and-drop low-code form editor
- bootstrap-wysiwyg - Tiny bootstrap-compatible WYSIWYG rich text editor.
- esprima - ECMAScript parsing infrastructure for multipurpose analysis.
- quill - A cross browser rich text editor with an API.
- pen - enjoy live editing (+markdown).
- medium-editor - Medium.com WYSIWYG editor clone.
- ace - Ace (Ajax.org Cloud9 Editor).
- Draft.js - A React framework for building text editors.
- bootstrap-wysihtml5 - Simple, beautiful wysiwyg editor
- editor - A markdown editor. still on development.
- EpicEditor - An embeddable JavaScript Markdown editor with split fullscreen editing, live previewing, automatic draft saving, offline support, and more.
- jsoneditor - A web-based tool to view, edit and format JSON.
- TinyMCE - The JavaScript Rich Text editor.
- trix - A rich text editor for everyday writing. By Basecamp.
- Trumbowyg - A lightweight and amazing WYSIWYG JavaScript editor.
- jquery-notebook - A simple, clean and elegant text editor. Inspired by the awesomeness of Medium.
- ckeditor-releases - The best web text editor for everyone.
- vim.js - JavaScript port of Vim with a persistent `~/.vimrc`.
- Squire - HTML5 rich text editor.
- wysihtml5 - Open 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.
- raptor-editor - Raptor, an HTML5 WYSIWYG content editor!
- popline - Popline is an HTML5 Rich-Text-Editor Toolbar.
- Summernote - Super simple WYSIWYG editor.
-
-
Security
-
Runner
- sanitize-html - sanitize-html provides a simple HTML sanitizer with a clear API.
- DOMPurify - A DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG.
- xss-filters - Secure XSS Filters by Yahoo.
- js-xss - Sanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist.
- pompelmi - Fast file-upload malware scanning for Node.js.
-
-
RegExp
-
Loading Status
-
Runner
- Ladda - Buttons with built-in loading indicators.
- css-loaders - A collection of loading spinners animated with CSS
- SpinKit - A collection of loading indicators animated with CSS.
- Mprogress.js - Create Google Material Design progress linear bars.
- Spin.js - A spinning activity indicator.
- progress.js - Create and manage progress bar for every objects on the page.
- progressbar.js - Beautiful and responsive progress bars with animated SVG paths.
- pace - Automatically add a progress bar to your site.
- topbar - Tiny & beautiful site-wide progress indicator.
- nanobar - Very lightweight progress bars. No jQuery.
- PageLoadingEffects - Modern ways of revealing new content using SVG animations.
- NProgress - Slim progress bars for Ajax'y applications.
-
-
Tours And Guides
-
Runner
- joyride - jQuery feature tour plugin.
- bootstrap-tour - Quick and easy product tours with Twitter Bootstrap Popovers.
- intro.js - A better way for new feature introduction and step-by-step users guide for your website and project.
- tourist - Simple, flexible tours for your app.
- shepherd - Guide your users through a tour of your app.
- hopscotch - A framework to make it easy for developers to add product tours to their pages.
- focusable - Set a spotlight focus on DOM element adding a overlay layer to the rest of the page.
- driver.js - Powerful yet light-weight, vanilla JavaScript engine to drive the user's focus across the page
-
-
Typography
-
Other
- BigText - jQuery plugin, calculates the font-size and word-spacing needed to match a line of text to a specific width.
- circletype - A jQuery plugin that lets you curve type on the web.
- slabText - A jQuery plugin for producing big, bold & responsive headlines.
- FitText.js - A jQuery plugin for inflating web type.
- Lettering.js - A lightweight, easy to use JavaScript `<span>` injector for radical Web Typography.
- FlowType.JS - Web typography at its finest: font-size and line-height based on element width.
- simple-text-rotator - Add a super simple rotating text to your website with little to no markup.
- novacancy.js - Text Neon Golden effect jQuery plug-in.
- jquery-responsive-text - Make your text sizing responsive!
-
-
SDK
-
Other
- OpenAI SDK - Official JavaScript / TypeScript library for the OpenAI API.
- javascript-sdk-design - JavaScript SDK design guide extracted from work and personal experience.
- Spotify SDK - Entity oriented SDK to work with the Spotify Web API.
- Square Node.js SDK - JavaScript client library for payments and other Square APIs.
- Stripe Node.js SDK - Stripe Node.js SDK lets you integrate payments, subscriptions, and billing into your JavaScript/TypeScript apps.
-
-
Full Text Search
-
Other
- Elasticlunr - This library is based on lunr.js, but more flexible and customized.
- flexsearch - It is a Next-Generation full text search library for Browser and Node.js.
- lunr - Library for use in the browser and It indexes JSON documents and provides a simple search interface for retrieving documents that best match text queries.
-
-
Bundlers
- Uglify - parser / mangler / compressor / beautifier toolkit
- FuseBox - A bundler that does it right
- Vite - Next Generation Frontend Tooling.
- webpack - Packs CommonJs/AMD modules for the browser.
- Rollup - Next-generation ES6 module bundler.
- Brunch - Fast front-end web app build tool with simple declarative config.
- Parcel - Blazing fast, zero configuration web application bundler.
- Microbundle - Zero-configuration bundler for tiny modules.
- Snowpack - A lightning-fast frontend build tool, designed for the modern web.
- Terser - parser, mangler and compressor toolkit for ES6+
-
Type Checkers
- TypeScript - A typed superset of JavaScript that compiles to plain JavaScript.
- TypL - the JavaScript Type Linter with a bias on type inference.
- Flow.js - A static type checker for JavaScript from Facebook.
- Hegel - A static type checker for JavaScript with a bias on type inference an strong type system.
- Hindley Milner Definitions - runtime type checking for JavaScript functions using Haskell-alike Hindley Milner type signatures.
- Zod - TypeScript-first schema validation with built-in static type inference.
- Yup - JavaScript schema builder and validator.
-
Functional Programming
-
Runner
- sweet-monads - A utility library containing popular monads and lazy iterators.
- preludejs - Hardcore Functional Programming for JavaScript.
- rambda - Faster and smaller alternative to *Ramda*.
- lodash - A utility library delivering consistency, customization, performance, & extras.
- Sugar - A JavaScript library for working with native objects.
- lazy.js - Like Underscore, but lazier.
- ramda - A practical functional library for JavaScript programmers.
- wild-wild-path - Object property paths with wildcards and regexps.
- underscore - JavaScript's utility _ belt.
- mout - Modular JavaScript Utilities.
- fxts - Lazy evaluation and concurrency.
-
-
String
-
Runner
- url-state-machine - Super fast spec-compliant URL parser state machine for Node.js.
- voca - The ultimate JavaScript string library
- multiline - Multiline strings in JavaScript.
- query-string - Parse and stringify URL query strings.
- sprintf.js - A sprintf implementation.
- plexis - Lo-fi, powerful, community-driven string manipulation library.
- selecting - A library that allows you to access the text selected by the user.
- string.js - Extra JavaScript string methods.
- he - A robust HTML entity encoder/decoder written in JavaScript.
- underscore.string - String manipulation extensions for Underscore.js JavaScript library.
- URI.js - JavaScript URL mutation library.
- jsurl - Lightweight URL manipulation with JavaScript.
- url-pattern - Easier than regex string matching patterns for urls and other strings. Turn strings into data or data into strings.
-
-
Number
-
Runner
- Numeral-js - A JavaScript library for formatting and manipulating numbers.
- accounting.js - A lightweight JavaScript library for number, money and currency formatting - fully localisable, zero dependencies.
- money.js - A tiny (1kb) JavaScript currency conversion library, for web & nodeJS.
- odometer - Smoothly transitions numbers with ease.
- Complex.js - A complex number library for JavaScript.
- Polynomial.js - A polynomials library for JavaScript.
- chance.js - Random generator helper in JavaScript. Can generate numbers, strings etc.
- Fraction.js - A rational number library for JavaScript.
- Quaternion.js - A quaternion library for JavaScript
-
-
Color
-
Runner
- randomColor - A color generator for JavaScript.
- chroma.js - JavaScript library for all kinds of color manipulations.
- color - JavaScript color conversion and manipulation library.
- colors - Smarter defaults for colors on the web.
- TinyColor - Fast, small color manipulation and conversion for JavaScript.
- PleaseJS - JavaScript Library for creating random pleasing colors and color schemes.
- Vibrant.js - Extract prominent colors from an image.
-
-
Routing
-
Runner
- davis.js - RESTful degradable JavaScript routing using pushState.
- navaid - A navigation aid (aka, router) for the browser in 850 bytes~!
- director - A tiny and isomorphic URL router for JavaScript.
- pathjs - Simple, lightweight routing for web browsers.
- crossroads - JavaScript Routes.
- page.js - Micro client-side router inspired by the Express router (~1200 bytes).
-
-
API
-
Runner
- Optic - Optic automatically documents and tests your APIs.
- SWR - React Hooks library for remote data fetching.
- React Query - Hooks for fetching, caching and updating asynchronous data in React.
- Vue Query - Hooks for fetching, caching and updating asynchronous data in Vue.
- FarFetch - Modern Fetch API wrapper for simplicity, with concise file uploading.
- jquery.rest - A jQuery plugin for easy consumption of RESTful APIs.
- Rails Ranger - An opinionated REST client for Ruby on Rails APIs.
- wretch - A tiny wrapper built around fetch with an intuitive syntax.
- axios - Promise based HTTP client for the browser and node.js.
- bottleneck - A powerful rate limiter that makes throttling easy.
- oauth-signature-js - JavaScript OAuth 1.0a signature generator for node and the browser.
- amygdala - RESTful HTTP client for JavaScript powered web applications.
- SWRV - Stale-while-revalidate data fetching for Vue.
-
-
Code highlighting
-
Runner
- shiki - Code highlighter powered by VS Code TextMate grammars. Accurate, themeable, works in Node or browser, great for JS and TS.
- Highlight.js - JavaScript syntax highlighter.
- PrismJS - Lightweight, robust, elegant syntax highlighting.
-
-
Notifications
-
Runner
- humane-js - A simple, modern, browser notification system.
- smoke.js - Framework-agnostic styled alert system for JavaScript.
- toastify-js - Pure JavaScript library for better notification messages.
- messenger - Growl-style alerts and messages for your app.
- pnotify - JavaScript notifications for Bootstrap, jQuery UI, and the Web Notifications Draft.
- notie - Simple notifications and inputs with no dependencies.
- notifire - Open-source notification infrastructure for products.
- toastr - Simple JavaScript toast notifications.
- iziToast - Elegant, responsive, flexible and lightweight notification plugin with no dependencies.
- noty - jQuery notification plugin.
-
-
Boilerplates
-
Other
- mobile-boilerplate - A front-end template that helps you build fast, modern mobile web apps.
- webplate - An awesome front-end framework that lets you stay focused on building your site or app while remaining really easy to use.
- this-is-responsive - This Is Responsive.
- Wasp - specific language for developing, building, and deploying modern Javascript full-stack web apps with less code.
- html5-boilerplate - A professional front-end template for building fast, robust, and adaptable web apps or sites.
- Cerberus - A few simple, but solid patterns for responsive HTML emails. Even in Outlook.
- full-page-intro-and-navigation - An intro page with a full width background image, a bold animated menu and an iOS-like blurred effect behind the navigation.
- Fluid-Squares - A fluid grid of square units.
- Mobile-First-RWD - An example of a mobile-first responsive web design.
- npm run-scripts - scripts.
-
-
ORM
-
Other
- Drizzle ORM
- Kysely - safe typescript SQL query builder.
- Knex
- MikroORM
- Mongoose
- TypeORM
- Sequelize - rich ORM for modern Node.js and TypeScript | PostgreSQL, MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB...
- Prisma - generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB.
- Objection.js - friendly ORM for Node.js built on top of Knex.js, with powerful relational support.
-
-
Node-Powered CMS Frameworks
-
Runner
- TaracotJS - fast and minimalist CMS based on Node.js.
- Nodizecms - CMS for CoffeeScript lovers.
- Cody - CMS with WSYWYG editor.
- PencilBlue - CMS and blogging platform.
- Strapi - Open source Node.js Headless CMS to easily build customisable APIs.
- KeystoneJS - powerful CMS and web app framework.
- Reaction Commerce - reactive CMS, real-time architecture and design.
- Hatch.js - CMS platform with social features.
- Apostrophe - CMS with content editing and essential services.
- Factor - The Javascript CMS
- Ghost - simple, powerful publishing platform.
- We.js - framework for real time apps, sites or blogs.
-
-
Data Structure
-
Runner
- buckets - A complete, fully tested and documented data structure library written in JavaScript.
- hashmap - Simple hashmap implementation that supports any kind of keys.
- ngraph.graph - Graph data structure in javascript.
- js-sdsl - Refer to the javascript standard data structure library implemented by c++ stl, which supports c++ bidirectional iterator mode.
- immutable-js - Immutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.
- mori - A library for using ClojureScript's persistent data structures and supporting API from the comfort of vanilla JavaScript.
-
-
Date
-
Runner
- date-fns - Modern JavaScript date utility library.
- timezone-js - Timezone-enabled JavaScript Date object. Uses Olson zoneinfo files for timezone data.
- dayjs - Day.js 2KB immutable date library alternative to Moment.js with the same modern API.
- tempo - Parsing, formatting, and timezones — Tempo is a small tree-shakable library for native Date objects.
- countdown.js - Super simple countdowns.
- luxon - Luxon is a library for working with dates and times in JavaScript.
- moment - Parse, validate, manipulate, and display dates in JavaScript.
- moment-timezone - Timezone support for moment.js.
- jquery-timeago - A jQuery plugin that makes it easy to support automatically updating fuzzy timestamps (e.g. "4 minutes ago").
- timeago.js - Simple library (less then 2kb) used to format date with `*** time ago` statement.
- fecha - Lightweight date formatting and parsing (~2KB). Meant to replace parsing and formatting functionality of moment.js.
- date - Date() for humans.
- ms.js - Tiny millisecond conversion utility.
- map-countdown - A browser countdown built on top of the Google Maps.
-
-
WebSockets
-
Generative AI
-
Other
- KaibanJS - KaibanJS is an open-source framework browser-compatibility of orchestration of multi-agent ai systems using a Kanban-inspired architecture.
-
-
Control Flow
-
Runner
- Bluebird - fully featured promise library with focus on innovative features and performance.
- async - Async utilities for node and the browser.
- step - An async control-flow library that makes stepping through logic easy.
- q - A tool for making and composing asynchronous promises in JavaScript.
- contra - Asynchronous flow control with a functional taste to it.
- when - A solid, fast Promises/A+ and when() implementation, plus other async goodies.
- ObjectEventTarget - Provide a prototype that add support to event listeners (with same behavior of EventTarget from DOMElements available on browsers).
- sporadic - Composable concurrency abstractions (such as streams, coroutines and Go-like channels) on top of promises, for Node and browser engines.
-
-
Scroll
-
Other
- simpleParallax - Simple and tiny JavaScript library to add parallax animations on any images
- iscroll - iScroll is a high performance, small footprint, dependency free, multi-platform JavaScript scroller.
- Clusterize.js - Tiny vanilla JS plugin to display large data sets easily.
- asscroll - A hybrid smooth scroll setup that combines the performance gains of virtual scroll with the reliability of native scroll.
- stroll - A collection of CSS List scroll effects bind to dom through javascript.
- locomotive-scroll - Detects the elements in viewport and smooth scrolling with parallax.
- scrollMonitor - A simple and fast API to monitor elements as you scroll.
- onepage-scroll - Create an Apple-like one page scroller website (iPhone 5S website) with One Page Scroll plugin.
- parallax - Parallax Engine that reacts to the orientation of a smart device.
- plax - jQuery powered parallaxing.
- jparallax - jQuery plugin for creating interactive parallax effect.
- fullPage - A simple and easy to use plugin to create fullscreen scrolling websites (also known as single page websites).
- elevator.js - Finally, a "back to top" button that behaves like a real elevator.
- headroom - Give your pages some headroom. Hide your header until you need it.
- skrollr - Stand-alone parallax scrolling library for mobile (Android + iOS) and desktop. No jQuery.
- stellar.js - Parallax scrolling made easy.
- ScrollMenu - A new interface to replace old boring scrollbar.
- rellax - Buttery smooth, super lightweight, vanilla javascript parallax library.
-
-
Menu
-
Other
- mmenu - The best jQuery plugin for app look-alike on- and off-canvas menus with sliding submenus for your website and webapp.
- jQuery-menu-aim - jQuery plugin to fire events when user's cursor aims at particular dropdown menu items. For making responsive mega dropdowns like Amazon's.
- jQuery contextMenu - contextMenu manager.
- Slideout - A responsive touch slideout navigation menu for mobile web apps.
- Slide and swipe - A sliding swipe menu that works with touchSwipe library.
-
-
QA Tools
-
Runner
- jsinspect - Detect copy-pasted and structurally similar code.
- husky - Prevents bad git commit, git push and more.
- jsfmt - For formatting, searching, and rewriting JavaScript.
- buddy.js - Magic number detection for JavaScript.
- ESLint - A fully pluggable tool for identifying and reporting on patterns in JavaScript.
- JSLint - High-standards, strict & opinionated code quality tool, aiming to keep only good parts of the language.
- JavaScript Standard Style - Opinionated, no-configuration style guide, style checker, and formatter
- Pre-evaluate code at buildtime - Pre-evaluate your front end javascript code at build-time
- JS-Beautifier - Npm cli and library to format JS code.
- prettier - Prettier is an opinionated code formatter.
- JSHint - JSHint is a tool that helps to detect errors and potential problems in your JavaScript code.
- jscs - JavaScript Code Style checker.
-
-
Keyboard Wrappers
-
Runner
- jwerty - Awesome handling of keyboard events.
- keymaster - A simple micro-library for defining and dispatching keyboard shortcuts.
- mousetrap - Simple library for handling keyboard shortcuts in JavaScript.
- Keypress - A keyboard input capturing utility in which any key can be a modifier key.
- KeyboardJS - A JavaScript library for binding keyboard combos without the pain of key codes and key combo conflicts.
- jquery.hotkeys - jQuery Hotkeys lets you watch for keyboard events anywhere in your code supporting almost any key combination.
-
-
Range Sliders
-
Runner
- jQRangeSlider - A JavaScript slider selector that supports dates.
- rangeslider.js - HTML5 input range slider element polyfill.
- Ion.RangeSlider - Powerful and easily customizable range slider with many options and skin support.
- noUiSlider - A lightweight, highly customizable range slider without bloat.
-
-
Table/Grid
-
Other
- flexboxgrid - Grid based on CSS3 flexbox.
- Packery - A grid layout library that uses a bin-packing algorithm. Useable for draggable layouts.
- jTable - A jQuery plugin to create AJAX based CRUD tables.
- Tabulator - (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.
- Bootstrap Table - An Extension to the popular Bootstrap framework for creating tables that fit the style of your site with no need for additional markup.
- floatThead - (jQuery plug-in) lock any table's header while scrolling within the body. Works on any table and requires no custom html or css.
- Isotope - A filterable, sortable, grid layout library. Can implement Masonry, Packery, and other layouts.
- Masonry - A cascading grid layout library.
-
-
Images
-
Other
- Drift - Easily add "zoom on hover" functionality to your site's images. Lightweight, no-dependency JavaScript.
- Magnificent.js - Zoom responsively, images & more, w/ jQuery.
- Panolens.js - Panolens.js is an event-driven and WebGL based panorama viewer. Lightweight and flexible
-
-
Video/Audio
-
Other
- video.js - Video.js - open source HTML5 & Flash video player.
- clappr - An extensible media player for the web http://clappr.io
- ractive-player - A library for making interactive videos in React.js.
- hls.js - A JavaScript library that implements an HTTP Live Streaming client. It relies on HTML5 video and MediaSource Extensions for playback.
- prettyembed.js - Prettier embeds for your YouTubes - with nice options like high-res preview images, advanced customization of embed options, and optional FitVids support.
- polyplayer - Rule YouTube, Soundcloud and Vimeo player with one API.
- flowplayer - The HTML5 video player for the web
- FitVids.js - A lightweight, easy-to-use jQuery plugin for fluid width video embeds.
- Ion.Sound - Simple sounds on any web page.
- photobooth-js - A widget that allows users to take their avatar pictures on your site.
- ts-audio - an agnostic and easy-to-use library to work with the `AudioContext` API.
- Play-em JS - Play'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.
- SoundJS - A library to make working with audio on the web easier. It provides a consistent API for playing audio in different browsers.
- AmplitudeJS - Open Source HTML5 Web Audio Library. Design your web audio player, the way you want. No dependencies required.
- ffmpeg.js - FFmpeg optimized for in-browser use: minimal size for faster loading, asm.js, performance tunings, etc.
- flv.js - An HTML5 Flash Video (FLV) Player written in pure JavaScript without Flash.
-
-
Image Processing
-
ES6
-
Other
- es6features - Overview of ECMAScript 6 features.
- es6-features - ECMAScript 6: Feature Overview & Comparison.
- es6-cheatsheet - ES2015 [ES6] cheatsheet containing tips, tricks, best practices and code snippets.
- Babel (Formerly 6to5) - Turn ES6+ code into vanilla ES5 with no runtime.
- Traceur compiler - ES6 features > ES5. Includes classes, generators, promises, destructuring patterns, default parameters & more.
- ECMAScript 6 compatibility table - Compatibility tables for all ECMAScript 6 features on a variety of environments.
-
-
Generators
-
Other
- Lume - Static site generator for Deno.
- Gatsby.js - React-based static site generator.
- Gridsome - Vue-powered static site generator.
- Docusaurus - React-based static site generator by Facebook, ideal for content-centric websites.
- Next.js - React powered static site generator, and they say "All the tools you need to make the Web. Faster.".
- Astro - The web framework for content-driven websites.
-
-
Loaders
- script.js - Asynchronous JavaScript loader and dependency manager.
- browserify - Browser-side require() the node.js way.
- RequireJS - A file and module loader for JavaScript.
- SeaJS - A Module Loader for the Web.
- HeadJS - The only script in your HEAD.
- lazyload - Tiny, dependency-free async JavaScript and CSS loader.
- systemjs - AMD, CJS & ES6 spec-compliant module loader.
- LodJS - Module loader based on AMD.
- ESL - Module loader browser first, support lazy define and AMD.
- modulejs - Lightweight JavaScript module system.
-
Transpilers
- SWC - Extensible Rust-based platform for compilation.
-
Timeline
-
Runner
- TimelineJS v3 - A Storytelling Timeline built in JavaScript.
- timesheet.js - JavaScript library for simple HTML5 & CSS3 time sheets.
-
-
I18n And L10n
-
Runner
- i18next - internationalisation (i18n) with JavaScript the easy way.
- polyglot - tiny i18n helper library.
- babelfish - i18n with human friendly API and built in plurals support.
- ttag - Modern javascript i18n localization library based on ES6 tagged templates and the good old GNU gettext.
- attranslate - A JavaScript-tool for synchronizing translation-files, including JSON/YAML/XML and other formats.
-
-
Voice Command
-
Streaming
-
Runner
- Tailor - Streaming layout service for front-end microservices, inspired by Facebook's BigPipe.
-
-
Vision Detection
-
Runner
- tracking.js - A modern approach for Computer Vision on the web.
- ocrad.js - OCR in JavaScript via Emscripten.
-
-
Operating System
-
Runner
- os.js - An open-source web desktop platform with a window manager, application APIs, GUI toolkit, filesystem abstractions and much more.
-
-
Benchmark
-
Runner
- benchmark.js - A benchmarking library. As used on jsPerf.com.
- matcha - A caffeine driven, simplistic approach to benchmarking.
- bencher - A suite of continuous benchmarking tools designed to catch performance regressions in CI.
-
-
Browser Detection
-
Runner
- bowser - a browser detector.
-
-
Component Management
- Bit - Create, find and reuse components (React, Angular, Node etc.) across applications.
-
Articles and Posts
-
Runner
- The JavaScript that you should know - Article about concepts of JavaScript Functional.
- Multi-threading using web-workers - Web Workers: Adding Multi-threading to JavaScript
- this keyword in JavaScript - Breaking down the 'this' keyword in JavaScript
-
Programming Languages
Categories
Misc
59
Data Visualization
47
MVC Frameworks and Libraries
47
Testing Frameworks
36
Form Widgets
34
Editors
24
Storage
24
Animations
23
Sliders
20
Scroll
18
Game Engines
18
Modals and Popups
17
Documentation
17
Templating Engines
16
Video/Audio
16
Date
14
String
13
API
13
Node-Powered CMS Frameworks
12
Package Managers
12
QA Tools
12
Loading Status
12
Functional Programming
11
Validation
10
Boilerplates
10
Loaders
10
Web Worker
10
Reactive Programming
10
Machine Learning
10
Bundlers
10
Notifications
10
ORM
9
Number
9
Typography
9
Maps
9
Table/Grid
8
Tours And Guides
8
Log
8
Control Flow
8
Type Checkers
7
Color
7
Frameworks
7
Tips
7
Routing
6
Data Structure
6
ES6
6
Generators
6
Keyboard Wrappers
6
SDK
5
Menu
5
Spreadsheet
5
I18n And L10n
5
Files
5
Security
5
RegExp
4
Range Sliders
4
Full Text Search
3
Images
3
Articles and Posts
3
Benchmark
3
Gesture
3
Image Processing
3
Code highlighting
3
Timeline
2
WebSockets
2
Voice Command
2
Vision Detection
2
Transpilers
1
Streaming
1
Browser Detection
1
Operating System
1
Generative AI
1
Component Management
1
Sub Categories
Keywords
javascript
188
typescript
42
nodejs
32
react
27
jquery
20
vue
19
html
13
angular
12
svg
12
javascript-library
12
jquery-plugin
11
awesome-list
11
visualization
10
framework
10
node
10
awesome
9
browser
9
es6
9
compiler
9
postgresql
9
css
9
chart
9
graph
9
web
8
graphql
8
mysql
8
performance
8
html5
8
modal
8
data-visualization
7
database
7
orm
7
canvas
7
animation
7
web-worker
7
wysiwyg
7
dom
7
editor
7
testing
7
charts
6
tdd
6
jsx
6
library
6
functional-programming
6
sqlite
6
json
6
automation
6
video
5
static-site-generator
5
react-native
5