- Package Managers
- Testing Frameworks
- QA Tools
- MVC Frameworks and Libraries
- Node-Powered CMS Frameworks
- Templating Engines
- Data Visualization
- Image processing
- Worth Reading
- yarn - Fast, reliable, and secure dependency management.
- Bower - A package manager for the web.
- browserify - Browser-side require() the node.js way.
- systemjs - AMD, CJS & ES6 spec-compliant module loader.
- browserify - Browserify lets you require('modules') in the browser by bundling up all of your dependencies.
- webpack - Packs CommonJs/AMD modules for the browser.
- Rollup - Next-generation ES6 module bundler.
- Parcel - Blazing fast, zero configuration web application bundler.
- cypress - A complete end-to-end testing experience.
- tape - Tap-producing test harness for node and browsers.
- chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
- expect.js - Minimalistic BDD-style assertions for Node.JS and the browser.
- istanbul - Yet another JS code coverage tool.
- phantomjs - Scriptable Headless WebKit.
- nightwatch - UI automated testing framework based on node.js and selenium webdriver.
- prettier - Prettier is an opinionated code formatter.
- jsinspect - Detect copy-pasted and structurally similar code.
- JSLint - High-standards, strict & opinionated code quality tool, aiming to keep only good parts of the language.
MVC Frameworks and Libraries
- jquery - Makes things like HTML document traversal and manipulation, event handling, and Ajax much simpler.
- react - A library for building user interfaces. It's declarative, efficient, and extremely flexible. Works with a Virtual DOM.
- backbone - Give your JS App some Backbone with Models, Views, Collections, and Events.
- angular.js - HTML enhanced for web apps.
- vue - Intuitive, fast & composable MVVM for building interactive interfaces.
- canjs - Can do JS, better, faster, easier.
- preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
- react-native - A framework for building native apps with React.
- riot - React-like library, but with very small size.
- thorax - Strengthening your Backbone.
- derby - MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers.
- mithril.js - Mithril is a client-side MVC framework (Light-weight, Robust, Fast).
Node-Powered CMS Frameworks
- KeystoneJS - powerful CMS and web app framework
- Reaction Commerce - reactive CMS, real-time architecture and design
- Ghost - simple, powerful publishing platform
- Nodizecms - CMS for CoffeeScript lovers
- PencilBlue - CMS and blogging platform
Templating engines allow you to perform string interpolation.
- handlebars.js - An extension to the Mustache templating language.
- hogan.js - A compiler for the Mustache templating language.
- dustjs - Asynchronous templates for the browser and node.js.
- Pug - Robust, elegant, feature rich template engine for nodejs. (formerly known as Jade)
- 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.
Articles and Posts
Data visualization tools for the web.
- metrics-graphics - A library optimized for concise, principled data graphics and layouts.
- pykcharts.js - Well designed d3.js charting without the complexity of d3.js.
- Chart.js - Simple HTML5 Charts using the <canvas> tag.
- vega - A visualization grammar.
- processing.js - Processing.js makes your data visualizations work using web standards and without any plug-ins
- morris.js - Pretty time-series line graphs.
- nvd3 - Build re-usable charts and chart components for d3.js
- svg.js - A lightweight library for manipulating and animating SVG.
- chartist-js - Simple responsive charts.
There're also some great commercial libraries, like amchart, anychart, plotly, and highchart.
- ace - Ace (Ajax.org Cloud9 Editor).
- CodeMirror - In-browser code editor.
- esprima - ECMAScript parsing infrastructure for multipurpose analysis.
- quill - A cross browser rich text editor with an API.
- medium-editor - Medium.com WYSIWYG editor clone.
- pen - enjoy live editing (+markdown).
- ckeditor-releases - The best web text editor for everyone.
- trix - A rich text editor for everyday writing. By Basecamp.
- Draft.js - A React framework for building text editors.
- 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.
- DevDocs is an all-in-one API documentation reader with a fast, organized, and consistent interface.
- sphinx a tool that makes it easy to create intelligent and beautiful documentation
- Using JSDoc
- documentation.js - API documentation generator with support for ES2015+ and flow annotation.
Libraries for working with files.
- Papa Parse - A powerful CSV library that supports parsing CSV files/strings and also exporting to CSV.
- 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.
- lodash - A utility library delivering consistency, customization, performance, & extras.
- MobX - TFRP library for simple, scalable state management.
Data structure libraries to build a more sophisticated application.
- immutable-js - Immutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.
- moment-timezone - Timezone support for moment.js.
- selecting - A library that allows you to access the text selected by the user
- query-string - Parse and stringify URL query strings.
- sprintf.js - A sprintf implementation.
- url-pattern - Easier than regex string matching patterns for urls and other strings. Turn strings into data or data into strings
- odometer - Smoothly transitions numbers with ease.
- 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.
- 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.
- DB.js - Promise based IndexDB Wrapper library
- lawnchair.js - Simple client-side JSON storage.
- colors - Smarter defaults for colors on the web.
- Vibrant.js - Extract prominent colors from an image.
I18n And L10n
- polyglot - tiny i18n helper library.
- babelfish - i18n with human friendly API and built in plurals support.
- async - Async utilities for node and the browser.
- step - An async control-flow library that makes stepping through logic easy.
- contra - Asynchronous flow control with a functional taste to it.
- Bluebird - fully featured promise library with focus on innovative features and performance.
- when - A solid, fast Promises/A+ and when() implementation, plus other async goodies.
- react router - Declarative routing for React.
- page.js - Micro client-side router inspired by the Express router (~1200 bytes).
- DOMPurify - A DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG.
- js-xss - Sanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist.
- xss-filters - Secure XSS Filters by Yahoo
- log - Console.log with style.
- console.log-wrapper - Log to the console in any browser with clarity.
- minilog – Lightweight client & server-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.
- RegExr - HTML/JS based tool for creating, testing, and learning about Regular Expressions.
- RegExpBuilder - Create regular expressions using chained methods.
- bottleneck - A powerful rate limiter that makes throttling easy.
- Tailor - Streaming layout service for front-end microservices, inspired by Facebook's BigPipe.
- tracking.js - A modern approach for Computer Vision on the web.
- deeplearn.js - A hardware-accelerated machine intelligence library for the web.
- DN2A - Digital Neural Networks Architecture.
- Synaptic.js - Architecture-free neural network library for node.js and the browser.
- bowser - a browser detector
- benchmark.js - A benchmarking library. As used on jsPerf.com.
- matcha - A caffeine driven, simplistic approach to benchmarking.
- PrismJS - Lightweight, robust, elegant syntax highlighting.
Libraries for indicate load status.
- Mprogress.js - Create Google Material Design progress linear bars.
- NProgress - Slim progress bars for Ajax'y applications.
- 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.
- SpinKit - A collection of loading indicators animated with CSS.
- Ladda - Buttons with built-in loading indicators.
- css-loaders - A collection of loading spinners animated with CSS
Besides libraries, there're Collection on Codepen, and generators like Ajaxload, Preloaders and CSSLoad.
- jquery-validation - jQuery Validation Plugin.
- validator.js - String validation and sanitization.
- validatr - Cross Browser HTML5 Form Validation.
- FormValidation - The best jQuery plugin to validate form fields. Formerly BootstrapValidator.
- is.js - Check types, regexps, presence, time and more.
- FieldVal - multipurpose validation library. Supports both sync and async validation.
- keymaster - A simple micro-library for defining and dispatching keyboard shortcuts.
- Keypress - A keyboard input capturing utility in which any key can be a modifier key.
- jquery.hotkeys - jQuery Hotkeys lets you watch for keyboard events anywhere in your code supporting almost any key combination.
- jwerty - Awesome handling of keyboard events.
Tours And Guides
- intro.js - A better way for new feature introduction and step-by-step users guide for your website and project.
- shepherd - Guide your users through a tour of your app.
- bootstrap-tour - Quick and easy product tours with Twitter Bootstrap Popovers.
- tourist - Simple, flexible tours for your app.
- chardin.js - Simple overlay instructions for your apps.
- pageguide - An interactive guide for web page elements using jQuery and CSS3.
- hopscotch - A framework to make it easy for developers to add product tours to their pages.
- joyride - jQuery feature tour plugin.
- focusable - Set a spotlight focus on DOM element adding a overlay layer to the rest of the page.
- iziToast - Elegant, responsive, flexible and lightweight notification plugin with no dependencies.
- messenger - Growl-style alerts and messages for your app.
- noty - jQuery notification plugin.
- humane-js - A simple, modern, browser notification system.
- notie - Simple notifications and inputs with no dependencies.
- Swiper - Mobile touch slider and framework with hardware accelerated transitions.
- slick - The last carousel you'll ever need.
- slidesJs - Is a ressponsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
- FlexSlider - An awesome, fully responsive jQuery slider plugin.
- unslider - The simplest jQuery slider there is.
- vegas - A jQuery plugin to add beautiful fullscreen backgrounds to your webpages. It even allows Slideshows.
- Sequence - CSS animation framework for creating responsive sliders, presentations, banners, and other step-based applications.
- reveal.js - A framework for easily creating beautiful presentations using HTML.
- 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.
- bespoke.js - DIY Presentation Micro-Framework
- Strut - Strut - An Impress.js and Bespoke.js Presentation Editor
- slidr - add some slide effects.
- Flickity - Touch, responsive, flickable galleries.
- Glide.js - Responsive and touch-friendly jQuery slider. It's simple, lightweight and fast.
- Ion.RangeSlider - Powerful and easily customizable range slider with many options and skin support.
- noUiSlider - A lightweight, highly customizable range slider without bloat.
- rangeslider.js - HTML5 input range slider element polyfill.
- 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.
- awesomplete - Ultra lightweight, usable, beautiful autocomplete with zero dependencies. - http://leaverou.github.io/awesomplete/
- pickadate.js - The mobile-friendly, responsive, and lightweight jQuery date & time input picker.
- bootstrap-datepicker - A datepicker for @twitter bootstrap forked from Stefan Petre's (of eyecon.ro), improvements by @eternicode.
- fullcalendar - Full-sized drag & drop event calendar (jQuery plugin).
- rome - A customizable date (and time) picker. Dependency free, opt-in UI.
- datedropper - datedropper is a jQuery plugin that provides a quick and easy way to manage dates for input fields.
- 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.
- chosen - A library for making long, unwieldy select boxes more friendly.
- jQuery-File-Upload - File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery.
- dropzone - Dropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars.
- fine-uploader - Multiple file upload plugin with progress-bar, drag-and-drop, direct-to-S3 uploading.
- form - jQuery Form Plugin.
- Garlic.js - Automatically persist your forms' text and select field values locally, until the form is submitted.
- card - Make your credit card form better in one line of code.
- stretchy - Form element autosizing, the way it should be.
- tipsy - Facebook-style tooltips plugin for jQuery.
- qTip2 - Pretty powerful tooltips.
- tooltipster - A jQuery tooltip plugin.
- simptip - A simple CSS tooltip made with Sass.
- jquery-popup-overlay - jQuery plugin for responsive and accessible modal windows and tooltips.
- toolbar - A tooltip style toolbar jQuery plugin
- hint.css - A tooltip library in CSS for your lovely websites.
Modals and Popups
- 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.
- css-modal - A modal built out of pure CSS.
- jquery-popup-overlay - jQuery plugin for responsive and accessible modal windows and tooltips.
- colorbox - A light-weight, customizable lightbox plugin for jQuery.
- fancyBox - A tool that offers a nice and elegant way to add zooming functionality for images, html content and multi-media on your webpages.
- swipebox - A touchable jQuery lightbox
- jBox - jBox is a powerful and flexible jQuery plugin, taking care of all your popup windows, tooltips, notices and more.
- scrollMonitor - A simple and fast API to monitor elements as you scroll.
- headroom - Give your pages some headroom. Hide your header until you need it.
- onepage-scroll - Create an Apple-like one page scroller website (iPhone 5S website) with One Page Scroll plugin.
- skrollr - Stand-alone parallax scrolling library for mobile (Android + iOS) and desktop. No jQuery.
- parallax - Parallax Engine that reacts to the orientation of a smart device.
- stellar.js - Parallax scrolling made easy.
- 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).
- ScrollMenu - A new interface to replace old boring scrollbar.
- Clusterize.js - Tiny vanilla JS plugin to display large data sets easily.
- 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.
- jTable - A jQuery plugin to create AJAX based CRUD tables.
- DataTables - (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.
- 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.
- Masonry - A cascading grid layout library.
- Packery - A grid layout library that uses a bin-packing algorithm. Useable for draggable layouts.
- Isotope - A filterable, sortable, grid layout library. Can implement Masonry, Packery, and other layouts.
- flexboxgrid - Grid based on CSS3 flexbox
- 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
- html5-boilerplate - A professional front-end template for building fast, robust, and adaptable web apps or sites.
- mobile-boilerplate - A front-end template that helps you build fast, modern mobile web apps.
- this-is-responsive - This Is Responsive
- npm run-scripts Task automation with NPM run-scripts.
- touchemulator - Emulate touch input on your desktop.
- Dragula - Drag and drop so simple it hurts
- Cesium - Open Source WebGL virtual globe and map engine.
- gmaps - The easiest way to use Google Maps.
- jqvmap - jQuery Vector Map Library.
- OpenLayers3 - A high-performance, feature-packed library for all your mapping needs.
- prettyembed.js - Prettier embeds for your YouTubes - with nice options like high-res preview images, advanced customization of embed options, and optional FitVids support.
- html5media - Enables
<audio>tags in all major browsers. https://html5media.info/
- polyplayer - Rule YouTube, Soundcloud and Vimeo player with one API
- flowplayer - The HTML5 video player for the web https://flowplayer.org/
- mediaelement - HTML5
<video>player with Flash and Silverlight shims that mimics the HTML5 MediaElement API, enabling a consistent UI in all browsers. http://mediaelementjs.com/
- SoundJS - A library to make working with audio on the web easier. It provides a consistent API for playing audio in different browsers.
- video.js - Video.js - open source HTML5 & Flash video player
- 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
- clappr - An extensible media player for the web http://clappr.io
- FlowType.JS - Web typography at its finest: font-size and line-height based on element width.
- 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
- 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!
- FitText.js - A jQuery plugin for inflating web type
<span>injector for radical Web Typography
- jquery.transit - Super-smooth CSS3 transformations and transitions for jQuery.
- impress.js - Make Prezi-like presentations with CSS3 transformations/transitions in an HTML document.
- bounce.js - Create tasty CSS3 powered animations in no time.
- GreenSock-JS - High-performance HTML5 animations that work in all major browsers.
- TransitionEnd - TransitionEnd is an agnostic and cross-browser library to work with transitionend event.
- the-cube - The Cube is an experiment with CSS3 transitions.
- Effeckt.css - A Performant Transitions and Animations Library
- animate.css - A cross-browser library of CSS animations. As easy to use as an easy thing.
- textillate - A simple plugin for CSS3 text animations
- animatable - One property, two values, endless possiblities
- shuffle-images - The Simplest Way to shuffle through images in a Creative Way http://www.thepetedesign.com/demos/shuffle-images_demo.html
- smoothState.js - Unobtrusive page transitions with jQuery. http://smoothstate.com/
- lena.js - A Library for image processing with filters and util functions.
- pica - High quality image resize (with fast Lanczos filter, implemented in pure JS).
- cropper - A simple jQuery image cropping plugin.
- 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.
- ECMAScript 6 compatibility table - Compatibility tables for all ECMAScript 6 features on a variety of environments.
- 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.
- Spotify SDK - Entity oriented SDK to work with the Spotify Web API.
- echo - Lazy-loading images with data-* attributes.
- picturefill - A responsive image polyfill for <picture>, srcset, sizes.
- spoiler-alert - SPOILER ALERT! A happy little jquery plugin to hide spoilers on your site.
- jquery.vibrate.js - Vibration API Wrappers
- list.js - Adds search, sort, filters and flexibility to tables, lists and various HTML elements. Built to be invisible and work on existing HTML. http://www.listjs.com
- 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.
- YDKJS - You Don't Know JS (book series).