awesome-javascript
A collection of awesome browser-side JavaScript libraries, resources and shiny things. Crawl and sort daily by AwesomelsBot
https://github.com/thoqbk/awesome-javascript
Last synced: about 1 month ago
JSON representation
Filtered by javascript. Clear filters
Animations
- textillate - A jquery plugin for CSS3 text animations. - ★ 3301
- transitionEnd - TransitionEnd is an agnostic and cross-browser library to work with transitionend event. - ★ 89
API
- axios - Promise based HTTP client for the browser and node.js - ★ 50971
- rails-ranger - An opinionated AJAX client for Ruby on Rails APIs - ★ 22
Boilerplates
- html5-boilerplate - A professional front-end template for building fast, robust, and adaptable web apps or sites. - ★ 41657
Bundlers
- webpack - A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows to load parts for the application on demand. Through "loaders," modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff. - ★ 45168
- parcel - Blazing fast, zero configuration web application bundler - ★ 27943
- brunch - Fast front-end web app build tool with simple declarative config, seamless incremental compilation for rapid development, an opinionated pipeline and workflow, and core support for source maps. - ★ 6530
Color
- TinyColor - Fast, small color manipulation and conversion for JavaScript - ★ 2442
Control Flow
- async - Async utilities for node and the browser - ★ 24879
Data Structure
- Buckets-JS - A complete, fully tested and documented data structure library written in pure JavaScript. - ★ 904
- hashmap - HashMap JavaScript class for Node.js and the browser. The keys can be anything and won't be stringified - ★ 315
Data Visualization
- three.js - JavaScript 3D library. - ★ 46236
- Chart.js - Simple HTML5 Charts using the <canvas> tag - ★ 40293
- recharts - Redefined chart library built with React and D3 - ★ 10289
- sigma.js - A JavaScript library dedicated to graph drawing - ★ 8230
- rickshaw - JavaScript toolkit for creating interactive real-time graphs - ★ 6299
- two.js - A renderer agnostic two-dimensional drawing api for the web. - ★ 5859
- heatmap.js - JavaScript Library for HTML5 canvas based heatmaps - ★ 4566
Date
- date-fns - Modern JavaScript date utility library - ★ 14943
- jquery-timeago - The original jQuery plugin that makes it easy to support automatically updating fuzzy timestamps (e.g. "4 minutes ago"). - ★ 3768
- fecha - Lightweight Javascript Date formatting and parsing - ★ 1589
Documentation
- esdoc - ESDoc - Good Documentation for JavaScript - ★ 2240
Editors
- medium-editor - Medium.com WYSIWYG editor clone. Uses contenteditable API to implement a rich text solution. - ★ 12897
- trix - A rich text editor for everyday writing - ★ 12554
- tinymce - The world's most popular JavaScript library for rich text editing. Available for React, Vue and Angular - ★ 5884
ES6
- babel - Babel is a compiler for writing next generation JavaScript. - ★ 30482
- es6-cheatsheet - ES2015 [ES6] cheatsheet containing tips, tricks, best practices and code snippets - ★ 10983
Files
Form Widgets
- select2 - Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results. - ★ 23012
- card - make your credit card form better in one line of code - ★ 10114
- fine-uploader - Multiple file upload plugin with image previews, drag and drop, progress bars. S3 and Azure support, image scaling, form support, chunking, resume, pause, and tons of other features. - ★ 7870
- rome - Customizable date (and time) picker. Opt-in UI, no jQuery! - ★ 2810
- Countable - Add live paragraph-, word- and character-counting to an HTML element. - ★ 1571
- dropzone - Dropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars. - ★ 14068
Functional Programming
I18n And L10n
- i18next - i18next: learn once - translate everywhere - ★ 3683
Image Processing
- lena.js - Library for image processing - ★ 264
Keyboard Wrappers
- mousetrap - Simple library for handling keyboard shortcuts in Javascript - ★ 9166
- KeyboardJS - A JavaScript library for binding keyboard combos without the pain of key codes and key combo conflicts. - ★ 1494
Loaders
- esl - enterprise standard loader - ★ 765
Loading Status
- progressbar.js - Responsive and slick progress bars - ★ 6655
Log
- loglevel - Minimal lightweight logging for JavaScript, adding reliable log level methods to wrap any available console.log methods - ★ 1215
Maps
Misc
- list.js - The perfect library for adding search, sort, filters and flexibility to tables, lists and various HTML elements. Built to be invisible and work on existing HTML. - ★ 9294
- array-explorer - A resource to help figure out what JavaScript array method would be best to use at any given time - ★ 1597
- BitSet.js - An arbitrary size Bit-Vector implementation in JavaScript - ★ 137
Modals and Popups
- sweetalert - A beautiful replacement for JavaScript's "alert" - ★ 19310
- baguetteBox.js - Simple and easy to use lightbox script written in pure JavaScript - ★ 1719
- jBox - jBox is a jQuery plugin that makes it easy to create customizable tooltips, modal windows, image galleries and more. - ★ 965
MVC Frameworks and Libraries
- vue - A progressive, incrementally-adoptable JavaScript framework for building UI on the web. - ★ 118949
- meteor - Meteor, the JavaScript App Platform - ★ 40483
- ember.js - Ember.js - A JavaScript framework for creating ambitious web applications - ★ 20173
- NativeScript - NativeScript is an open source framework for building truly native mobile apps with JavaScript. Use web skills, like Angular and Vue.js, FlexBox and CSS, and get native UI and performance on iOS and Android. - ★ 15399
- riot - Simple and elegant component-based UI library - ★ 13323
- feathers - A REST and realtime API layer for modern applications. - ★ 9974
- knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript - ★ 9201
- backbone.marionette - The Backbone Framework - ★ 7164
- rivets - Lightweight and powerful data binding. - ★ 3125
- jsblocks - Better MV-ish Framework - ★ 2833
- canjs - JS framework providing state management, templates & custom elements. Helps you build the impossible while keeping the common stuff easy. - ★ 1698
- hyperapp - 1 kB JavaScript micro-framework for building declarative web applications - ★ 15704
Node-Powered CMS Frameworks
Notifications
- noty - Dependency-free notification library that makes it easy to create alert - success - error - warning - information - confirmation messages as an alternative the standard alert dialog. - ★ 6118
- notie - a clean and simple notification, input, and selection suite for javascript, with no dependencies - ★ 6008
- pnotify - Beautiful JavaScript notifications with Web Notifications support. - ★ 3286
Number
- chancejs - Chance - Random generator helper for JavaScript - ★ 4122
- Complex.js - A complex number library - ★ 120
- Polynomial.js - A JavaScript library to work with polynomials - ★ 62
Other Awesome Lists
- awesome-react - A collection of awesome things regarding React ecosystem. - ★ 28542
- js-must-watch - Must-watch videos about javascript - ★ 11838
- awesome-interview-questions - A curated awesome list of lists of interview questions. Feel free to contribute! - ★ 20966
Package Managers
- bower - A package manager for the web - ★ 15283
QA Tools
- prettier - Prettier is an opinionated code formatter. - ★ 28587
- eslint - A fully pluggable tool for identifying and reporting on patterns in JavaScript - ★ 12730
- jsinspect - Detect copy-pasted and structurally similar code - ★ 2847
- buddy.js - Magic number detection for JavaScript - ★ 627
- standard - JavaScript Style Guide, with linter & automatic code fixer - ★ 19655
Range Sliders
- ion.rangeSlider - jQuery only range slider - ★ 2064
- rangeslider.js - HTML5 input range slider element polyfill - ★ 1850
Reactive Programming
- mobx - Simple, scalable state management. - ★ 17468
Scroll
- fullPage.js - fullPage plugin by Alvaro Trigo. Create full screen pages fast and simple - ★ 25235
- scrollMonitor - A simple and fast API to monitor elements as you scroll - ★ 2986
SDK
- spotify-sdk - Spotify SDK | Entity and Collection oriented | Browser and Node support! - ★ 155
Security
- DOMPurify - DOMPurify - a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. DOMPurify works with a secure default, but offers a lot of configurability and hooks. Demo: - ★ 2732
Sliders
- PhotoSwipe - JavaScript image gallery for mobile and desktop, modular, framework independent - ★ 17482
- slidr - add some slide effects. - ★ 1518
Storage
String
- voca - The ultimate JavaScript string library - ★ 2405
- he - A robust HTML entity encoder/decoder written in JavaScript. - ★ 1738
- sprintf.js - sprintf.js is a complete open source JavaScript sprintf implementation - ★ 1709
- selecting - A library that allows you to access the text selected by the user - ★ 69
Templating Engines
- marko - A friendly (and fast!) UI library from eBay that makes building web apps fun - ★ 7598
Testing Frameworks
- mocha - simple, flexible, fun javascript test framework for node.js & the browser - ★ 16606
- ava - Futuristic JavaScript test runner - ★ 15061
- jasmine - Simple JavaScript testing framework for browsers and node.js - ★ 13971
- karma - Spectacular Test Runner for JavaScript - ★ 10303
- nightwatch - Automated testing and continuous integration framework based on Node.js and using the Webdriver protocol - ★ 8715
- protractor - E2E test framework for Angular apps - ★ 7889
- casperjs - CasperJS is no longer actively maintained. Navigation scripting and testing utility for PhantomJS and SlimerJS - ★ 7256
- sinon - Test spies, stubs and mocks for JavaScript. - ★ 6587
- chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework. - ★ 5837
- intern - A next-generation code testing stack for JavaScript. - ★ 4064
- slimerjs - A scriptable browser like PhantomJS, based on Firefox - ★ 2774
- JSCover - JSCover is a JavaScript Code Coverage Tool that measures line, branch and function coverage - ★ 348
Timeline
- timesheet.js - JavaScript library for HTML5 & CSS3 time sheets - ★ 6541
Tours And Guides
- intro.js - A better way for new feature introduction and step-by-step users guide for your website and project. - ★ 17345
Typography
- CircleType - A JavaScript library that lets you curve type on the web. - ★ 383
Validation
- validate.js - Lightweight JavaScript form validation library inspired by CodeIgniter. - ★ 2385
Video/Audio
- video.js - Video.js - open source HTML5 & Flash video player - ★ 23096
- clappr - An extensible media player for the web. - ★ 4447
- PrettyEmbed.js - Prettier embeds for your YouTubes - with nice options like high-res preview images, advanced customization of embed options, and optional FitVids support. - ★ 1065
- ion.sound - JavaScript plugin for playing sounds and music in browsers - ★ 653
- playemjs - JavaScript component that plays a sequence of audio and video streams from Youtube, Soundcloud, Vimeo... - ★ 59
Worth Reading
- You-Dont-Know-JS - A book series on JavaScript. on twitter. - ★ 91498