Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-javascript

🐢 A collection of awesome browser-side JavaScript libraries, resources and shiny things.
https://github.com/sorrycc/awesome-javascript

Last synced: 5 days ago
JSON representation

  • Package Managers

    • npm - npm is the package manager for JavaScript.
    • yarn - Fast, reliable, and secure dependency management.
    • pnpm - Fast, disk space efficient package manager.
    • Bower - A package manager for the web.
    • component - Client package management for building better web applications.
    • spm - Brand new static package manager.
    • jam - A package manager using a browser-focused and RequireJS compatible repository.
    • jspm - Frictionless browser package management.
    • Ender - The no-library library.
    • volo - Create front end projects from templates, add dependencies, and automate the resulting projects.
    • 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.
  • Transpilers

    • SWC - Extensible Rust-based platform for compilation.
  • Bundlers

    • Snowpack - A lightning-fast frontend build tool, designed for the modern web.
    • 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.
    • FuseBox - A bundler that does it right
    • Terser - parser, mangler and compressor toolkit for ES6+
    • Uglify - parser / mangler / compressor / beautifier toolkit
  • Type Checkers

    • TypeScript - A typed superset of JavaScript that compiles to plain JavaScript.
    • 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.
    • TypL - the JavaScript Type Linter with a bias on type inference.
    • Hindley Milner Definitions - runtime type checking for JavaScript functions using Haskell-alike Hindley Milner type signatures.
  • Testing Frameworks

    • Frameworks

      • Cypress - Complete end-to-end testing framework for anything that runs in a browser and beyond.
      • qunit - An easy-to-use JavaScript Unit Testing framework.
      • 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.
      • qunit - An easy-to-use JavaScript Unit Testing framework.
      • prova - Node & Browser test runner based on Tape and Browserify
      • DalekJS - Automated cross browser functional testing with JavaScript
      • Protractor - Protractor is an end-to-end test framework for AngularJS applications.
      • TestCafe - Automated browser testing for the modern web development stack.
      • ava - 🚀 Futuristic JavaScript test runner
      • jest - Painless JavaScript Unit Testing.
      • WebdriverI/O - Next-gen browser and mobile automation test framework for Node.js
    • 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.
      • react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
      • chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
      • Sinon.JS - Test spies, stubs, and mocks for JavaScript.
      • expect.js - Minimalistic BDD-style assertions for Node.JS and the browser.
      • proxyquire - Stub nodejs's require.
      • react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
    • Runner

      • puppeteer - Headless Chrome Node.js API by official Google Chrome team.
      • phantomjs - Scriptable Headless WebKit.
      • slimerjs - A PhantomJS-like tool running Gecko.
      • 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.
      • karma - Spectacular Test Runner for JavaScript.
      • nightwatch - UI automated testing framework based on node.js and selenium webdriver.
      • intern - A next-generation code testing stack for JavaScript.
      • webdriverio - Next-gen WebDriver test automation framework for Node.js.
      • taiko - A Node.js library with a simple API to automate Chromium based browsers.
      • Playwright - Node.js library to automate Chromium, Firefox and WebKit with a single API.
      • puppeteer - Headless Chrome Node.js API by official Google Chrome team.
    • Coverage

      • istanbul - Yet another JS code coverage tool.
      • blanket - A simple code coverage library for JavaScript. Designed to be easy to install and use, for both browser and nodejs.
      • JSCover - JSCover is a tool that measures code coverage for JavaScript programs.
  • MVC Frameworks and Libraries

    • Runner

      • 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.
      • preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
      • react-native - A framework for building native apps with React.
      • FoalTS - Elegant and all-inclusive Node.JS framework for building web applications (TypeScript).
      • aurelia - A JavaScript client framework for mobile, desktop and web.
      • espresso.js - A minimal JavaScript library for crafting user interfaces.
      • react - A library for building user interfaces. It's declarative, efficient, and extremely flexible. Works with a Virtual DOM.
      • hyperapp - 1kb JavaScript library for building frontend applications.
      • preact - Fast 3kb React alternative with the same ES6 API. Components & 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).
      • GrapesJS - Free and Open source Web Builder Framework. Next generation tool for building templates without coding.
      • angular.js - HTML enhanced for web apps. (deprecated)
      • 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.
      • meteor - An ultra-simple, database-everywhere, data-on-the-wire, pure-javascript web framework.
      • 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.
      • knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript.
      • spine - Lightweight MVC library for building JavaScript applications.
      • espresso.js - A minimal JavaScript library for crafting user interfaces.
      • canjs - Can do JS, better, faster, easier.
      • nativescript - Build truly native cross-platform iOS and Android apps with JavaScript.
      • riot - React-like library, but with very small size.
      • thorax - Strengthening your Backbone.
      • chaplin - An architecture for JavaScript applications using the Backbone.js library.
      • 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.
      • 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.
      • derby-awesome - A collection of awesome derby components
      • way.js - Simple, lightweight, persistent two-way databinding.
      • mithril.js - Mithril is a client-side MVC framework (Light-weight, Robust, Fast).
      • jsblocks - jsblocks is better MV-ish framework.
      • 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.
      • Lucia - 3kb library for tiny web apps.
      • 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.
      • Blockly - A library that adds a visual code editor to web and mobile apps by Google.
      • Million - <1kb compiler-focused virtual DOM. It's fast!
      • 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.
      • hyperapp - 1kb JavaScript library for building frontend applications.
      • inferno - 🔥 An extremely fast, React-like JavaScript library for building modern user interfaces.
      • preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
  • 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.
      • 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.
      • Matter.js - A 2D rigid body JavaScript physics engine.
      • 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.
      • Matter.js - A 2D rigid body JavaScript physics engine.
  • Articles and Posts

  • Data Visualization

    • Runner

      • metrics-graphics - A library optimized for concise, principled data graphics and layouts.
      • visjs - Multiple Libraries for dynamic, browser-based data visualization.
      • dimple.js - Easy charts for business analytics powered by d3.
      • cola.js - library for arranging your HTML5 documents and diagrams using constraint-based optimization techniques
      • amchart - js/).
      • 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.
      • dimple.js - Easy charts for business analytics powered by d3.
      • d3 - A JavaScript visualization library for HTML and SVG.
      • three.js - JavaScript 3D library.
      • Chart.js - Simple HTML5 Charts using the &lt;canvas&gt; tag.
      • fabric.js - JavaScript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser.
      • peity - Progressive <svg> bar, line and pie charts.
      • raphael - JavaScript Vector Library.
      • echarts - Enterprise Charts.
      • two.js - A renderer agnostic two-dimensional drawing api for the web.
      • g.raphael - Charts for Raphaël.
      • sigma.js - A JavaScript library dedicated to graph drawing.
      • arbor - A graph visualization library using web workers and jQuery.
      • cubism - A D3 plugin for visualizing time series.
      • dc.js - Multi-Dimensional charting built to work natively with crossfilter rendered with d3.js
      • vega - A visualization grammar.
      • envisionjs - Dynamic HTML5 visualization.
      • 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.
      • svg.js - A lightweight library for manipulating and animating SVG.
      • heatmap.js - JavaScript Library for HTML5 canvas based heatmaps.
      • jquery.sparkline - A plugin for the jQuery JavaScript library to generate small sparkline charts directly in the browser.
      • trianglify - Low poly style background generator with d3.js.
      • d3-cloud - Create word clouds in JavaScript.
      • d4 - A friendly reusable charts DSL for D3.
      • paper.js - The Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas.
  • Documentation

    • Runner

      • DevDocs - in-one API documentation reader with a fast, organized, and consistent interface.
      • docco - and-dirty, hundred-line-long, literate-programming-style documentation generator.
      • sphinx
      • documentation.js - API documentation generator with support for ES2015+ and flow annotation.
      • sphinx
      • documentation.js - API documentation generator with support for ES2015+ and flow annotation.
  • Reactive Programming

    • Runner

      • Cycle.js - A functional and reactive JavaScript library for cleaner code.
      • Cycle.js - A functional and reactive JavaScript library for cleaner code.
      • concent - Definitely the ❤️ simplest but ⚡️ strongest state management for react, it is predictable、progressive and efficient.
  • Data Structure

    • Runner

      • immutable-js - Immutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.
      • immutable-js - Immutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.
  • Storage

    • Runner

      • localForage - Offline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API.
      • localForage - Offline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API.
      • 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.
  • I18n And L10n

    • Runner

      • attranslate - A JavaScript-tool for synchronizing translation-files, including JSON/YAML/XML and other formats.
  • Log

    • Runner

      • minilog - side logging with Stream-API backends.
  • RegExp

    • Runner

      • RegEx101 - Online regex tester and debugger for JavaScript. Also supports Python, PHP and PCRE.
      • RegExr - HTML/JS based tool for creating, testing, and learning about Regular Expressions.
  • API

    • Runner

      • React Query - Hooks for fetching, caching and updating asynchronous data in React.
      • FarFetch - Modern Fetch API wrapper for simplicity, with concise file uploading.
      • React Query - Hooks for fetching, caching and updating asynchronous data in React.
  • Machine Learning

    • Runner

      • ml5.js - Friendly Machine Learning for the Web.
      • DN2A - Digital Neural Networks Architecture.
      • ml5.js - Friendly Machine Learning for the Web.
  • Validation

    • Runner

      • jquery-validation - jQuery Validation Plugin.
      • FormValidation - The best jQuery plugin to validate form fields. Formerly BootstrapValidator.
      • Funval - Data validation using functions interfaces (support TypeScript).
      • jquery-validation - jQuery Validation Plugin.
      • validator.js - String validation and sanitization.
      • Funval - Data validation using functions interfaces (support TypeScript).
  • Sliders

    • Runner

      • slidesJs - Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
      • slidesJs - Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
      • FlexSlider - An awesome, fully responsive jQuery slider plugin.
      • Glide.js - Responsive and touch-friendly jQuery slider. It's simple, lightweight and fast.
      • Embla Carousel - An extensible low level carousel for the web, written in TypeScript.
  • Menu

    • Other

      • mmenu - The best jQuery plugin for app look-alike on- and off-canvas menus with sliding submenus for your website and webapp.
      • mmenu - The best jQuery plugin for app look-alike on- and off-canvas menus with sliding submenus for your website and webapp.
  • Table/Grid

    • Other

      • 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.
      • 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.
      • jTable - A jQuery plugin to create AJAX based CRUD tables.
  • Frameworks

    • Other

      • 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.
      • w2ui - A set of jQuery plugins for front-end development of data-driven web applications.
  • Boilerplates

  • Maps

    • Other

      • OpenLayers3 - A high-performance, feature-packed library for all your mapping needs.
      • Cesium - Open Source WebGL virtual globe and map engine.
      • jqvmap - jQuery Vector Map Library.
  • Video/Audio

    • Other

      • AmplitudeJS - Open Source HTML5 Web Audio Library. Design your web audio player, the way you want. No dependencies required.
      • mediaelement - HTML5 <audio> or <video> player with Flash and Silverlight shims that mimics the HTML5 MediaElement API, enabling a consistent UI in all browsers. <http://www.mediaelementjs.com/>
      • ractive-player - A library for making interactive videos in React.js.
  • Animations

    • Other

      • Anime.js - A JavaScript animation engine.
      • Mo.js - Motion graphics toolbelt for the web.
      • AutoAnimate - Add motion to your apps with a single line of code.
      • GreenSock-JS - High-performance HTML5 animations that work in all major browsers.
      • animate.css - A cross-browser library of CSS animations. As easy to use as an easy thing.
      • 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.
  • ES6

  • Misc

  • Node-Powered CMS Frameworks

    • Runner

      • Apostrophe - CMS with content editing and essential services.
      • Factor - The Javascript CMS
      • KeystoneJS - powerful CMS and web app framework.
      • Reaction Commerce - reactive CMS, real-time architecture and design.
      • Ghost - simple, powerful publishing platform.
      • We.js - framework for real time apps, sites or blogs.
      • Hatch.js - CMS platform with social features.
      • 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.
      • Factor - The Javascript CMS
  • Loaders

    • 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.
    • script.js - Asynchronous JavaScript loader and dependency manager.
    • 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.
  • QA Tools

    • Runner

      • 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
      • JS-Beautifier - Npm cli and library to format JS code.
      • prettier - Prettier is an opinionated code formatter.
      • jscs - JavaScript Code Style checker.
      • jsfmt - For formatting, searching, and rewriting JavaScript.
      • jsinspect - Detect copy-pasted and structurally similar code.
      • 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
      • husky - Prevents bad git commit, git push and more.
      • JSHint - JSHint is a tool that helps to detect errors and potential problems in your JavaScript code.
  • Spreadsheet

    • Runner

      • Luckysheet - Luckysheet is an online spreadsheet like excel that is powerful, simple to configure, and completely open source.
  • Editors

    • Runner

      • CodeMirror - In-browser code editor.
      • ckeditor-releases - The best web text editor for everyone.
      • Squire - HTML5 rich text editor.
      • 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.
  • Files

    • Runner

      • jsPDF - JavaScript PDF generation.
  • Date

    • Runner

      • ms.js - Tiny millisecond conversion utility.
  • String

    • Runner

      • underscore.string - String manipulation extensions for Underscore.js JavaScript library.
  • Number

    • Runner

      • 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.
      • Fraction.js - A rational number library for JavaScript.
      • Quaternion.js - A quaternion library for JavaScript
  • Security

  • Browser Detection

    • Runner

      • bowser - a browser detector.
  • Code highlighting

  • Loading Status

    • Runner

      • pace - Automatically add a progress bar to your site.
      • pace - Automatically add a progress bar to your site.
  • Tours And Guides

    • Runner

      • 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.
  • Notifications

    • Runner

      • iziToast - Elegant, responsive, flexible and lightweight notification plugin with no dependencies.
      • notifire - Open-source notification infrastructure for products.
  • Form Widgets

    • Calendar

      • bootstrap-datepicker - A datepicker for @twitter bootstrap forked from Stefan Petre's (of eyecon.ro), improvements by @eternicode.
      • Pikaday - A refreshing JavaScript Datepicker — lightweight, no dependencies, modular CSS.
    • File Uploader

      • dropzone - Dropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars.
  • Tips

  • 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.
  • Scroll

    • Other

      • simpleParallax - Simple and tiny JavaScript library to add parallax animations on any images
  • SDK

  • Component Management

    • Bit - Create, find and reuse components (React, Angular, Node etc.) across applications.
  • Templating Engines

    • Runner

      • mustache.js - Minimal templating with {{mustaches}} in JavaScript.
      • handlebars.js - An extension to the Mustache templating language.
      • nunjucks - A rich and powerful templating language for JavaScript from Mozilla.
      • hogan.js - A compiler for the Mustache templating language.
      • doT - The fastest + concise JavaScript template engine for nodejs and browsers.
      • eco - Embedded CoffeeScript templates.
      • JavaScript-Templates - < 1KB lightweight, fast & powerful JavaScript templating engine with zero dependencies.
      • 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.