awesome-javascript
🐢 A collection of awesome browser-side JavaScript libraries, resources and shiny things.
https://github.com/sorrycc/awesome-javascript
Last synced: 3 days ago
JSON representation
-
Misc
-
Other
- denolib/awesome-deno
- bolshchikov/js-must-watch
- addyosmani/es6-tools
- davidsonfellipe/awesome-wpo
- enaqx/awesome-react
- instanceofpro/awesome-backbone
- willianjusten/awesome-svg
- bayandin/awesome-awesomeness
- ![CC0
- Logical Or Not - A game about JavaScript specificities.
- Clipboard.js - "Copy to clipboard" without Flash or use of Frameworks.
- Superhero.js - A collection of resources about creating, testing and maintaining a large JavaScript code base.
- JavaScript Tutorials - Learn Javascript online from a diverse range of user ranked online tutorials.
- chencheng
- Roadmap.sh JavaScript Roadmap - Learn JavaScript from a community sourced learning roadmap.
-
-
I18n And L10n
-
Runner
- attranslate - A JavaScript-tool for synchronizing translation-files, including JSON/YAML/XML and other formats.
-
-
MVC Frameworks and Libraries
-
Runner
- react-native - A framework for building native apps with React.
- aurelia - A JavaScript client framework for mobile, desktop and web.
- 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.
- chaplin - An architecture for JavaScript applications using the Backbone.js library.
- 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.
- spine - Lightweight MVC library for building JavaScript applications.
- meteor - An ultra-simple, database-everywhere, data-on-the-wire, pure-javascript web framework.
- vue - Intuitive, fast & composable MVVM for building interactive interfaces.
- angular.js - HTML enhanced for web apps. (deprecated)
- ember.js - A JavaScript framework for creating ambitious web applications.
- backbone - Give your JS App some Backbone with Models, Views, Collections, and Events.
- riot - React-like library, but with very small size.
- Keo - Functional stateless React components with Shadow DOM support.
- Drawflow - This allow you to create data flows easily and quickly.
- 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.
- nativescript - Build truly native cross-platform iOS and Android apps with JavaScript.
- Adonis - The Node.js Framework highly focused on developer ergonomics, stability and confidence.
- atvjs - Blazing fast Apple TV application development using pure JavaScript.
- derby - MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers.
- knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript.
- Lucia - 3kb library for tiny web apps.
- rivets - Lightweight and powerful data binding + templating solution.
- way.js - Simple, lightweight, persistent two-way databinding.
- feathers - A minimalist real-time JavaScript framework for tomorrow's apps.
- Million - <1kb compiler-focused virtual DOM. It's fast!
- Blockly - A library that adds a visual code editor to web and mobile apps by Google.
- litegraph.js - A graph node engine and editor similar to PD or UDK Blueprints, comes with its own editor in HTML5 Canvas2D.
- Remult - A CRUD framework for full-stack TypeScript.
- ripple - A tiny foundation for building reactive views.
- ractive - Next-generation DOM manipulation.
- derby-awesome - A collection of awesome derby components
- canjs - Can do JS, better, faster, easier.
- marionette - A composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications.
- Rete.js - A modular framework for visual programming allows to create node based editor in browser.
- jsblocks - jsblocks is better MV-ish framework.
- Whatsup - A frontend framework for chillout-mode development 🥤. JSX components on generators, fast mobx-like state management and exclusive cssx style system.
- thorax - Strengthening your Backbone.
- preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
- GrapesJS - Free and Open source Web Builder Framework. Next generation tool for building templates without coding.
- mithril.js - Mithril is a client-side MVC framework (Light-weight, Robust, Fast).
- hyperapp - 1kb JavaScript library for building frontend applications.
- espresso.js - A minimal JavaScript library for crafting user interfaces.
-
-
Package Managers
- npm - npm is the package manager for JavaScript.
- yarn - Fast, reliable, and secure dependency management.
- pnpm - Fast, disk space efficient package manager.
- bun - Bun is a fast JavaScript all-in-one toolkit.
- component - Client package management for building better web applications.
- Bower - A package manager for the web.
- 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.
- 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.
-
Transpilers
- SWC - Extensible Rust-based platform for compilation.
-
Bundlers
- Snowpack - A lightning-fast frontend build tool, designed for the modern web.
- Microbundle - Zero-configuration bundler for tiny modules.
- 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.
- webpack - Packs CommonJs/AMD modules for the browser.
- Terser - parser, mangler and compressor toolkit for ES6+
- FuseBox - A bundler that does it right
- Uglify - parser / mangler / compressor / beautifier toolkit
- Vite - Next Generation Frontend Tooling.
-
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.
- Zod - TypeScript-first schema validation with built-in static type inference.
- Yup - JavaScript schema builder and validator.
- 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.
- WebdriverI/O - Next-gen browser and mobile automation test framework for Node.js
- ava - 🚀 Futuristic JavaScript test runner
- mocha - Simple, flexible, fun JavaScript test framework for node.js & the browser.
- jasmine - DOM-less simple JavaScript testing framework.
- Protractor - Protractor is an end-to-end test framework for AngularJS applications.
- TestCafe - Automated browser testing for the modern web development stack.
- prova - Node & Browser test runner based on Tape and Browserify
- DalekJS - Automated cross browser functional testing with JavaScript
- jest - Painless JavaScript Unit Testing.
- tape - Tap-producing test harness for node and browsers.
- qunit - An easy-to-use JavaScript Unit Testing framework.
-
Assertion
- Enzyme - Enzyme is a JavaScript Testing utility for React that makes it easier to assert, manipulate, and traverse your React Components' output.
- 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.
- Supertest - A popular HTTP assertion library for testing REST APIs, often used with other testing frameworks like Mocha or Jest
- react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
-
Runner
- 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.
- phantomjs - Scriptable Headless WebKit.
- nightwatch - UI automated testing framework based on node.js and selenium webdriver.
- webdriverio - Next-gen WebDriver test automation framework for Node.js.
- intern - A next-generation code testing stack for JavaScript.
- casperjs - Navigation scripting & testing utility for PhantomJS and SlimerJS.
- slimerjs - A PhantomJS-like tool running Gecko.
- karma - Spectacular Test Runner for JavaScript.
- zombie - Insanely fast, full-stack, headless browser testing using node.js.
- totoro - A simple and stable cross-browser testing tool.
- puppeteer - Headless Chrome Node.js API by official Google Chrome team.
-
Coverage
-
-
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.
- Matter.js - A 2D rigid body JavaScript physics engine.
- Phaser - Phaser - A fast, fun and free open source HTML5 game framework.
-
-
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
-
-
Data Visualization
-
Runner
- 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/).
- d3 - A JavaScript visualization library for HTML and SVG.
- echarts - Enterprise Charts.
- three.js - JavaScript 3D library.
- flot - Attractive JavaScript charts for jQuery.
- Chart.js - Simple HTML5 Charts using the <canvas> tag.
- d3-cloud - Create word clouds in JavaScript.
- trianglify - Low poly style background generator with d3.js.
- sigma.js - A JavaScript library dedicated to graph drawing.
- dc.js - Multi-Dimensional charting built to work natively with crossfilter rendered with d3.js
- morris.js - Pretty time-series line graphs.
- peity - Progressive <svg> bar, line and pie charts.
- paper.js - The Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas.
- heatmap.js - JavaScript Library for HTML5 canvas based heatmaps.
- nvd3 - Build re-usable charts and chart components for d3.js.
- g.raphael - Charts for Raphaël.
- two.js - A renderer agnostic two-dimensional drawing api for the web.
- raphael - JavaScript Vector Library.
- cubism - A D3 plugin for visualizing time series.
- d4 - A friendly reusable charts DSL for D3.
- rickshaw - JavaScript toolkit for creating interactive real-time graphs.
- jquery.sparkline - A plugin for the jQuery JavaScript library to generate small sparkline charts directly in the browser.
- envisionjs - Dynamic HTML5 visualization.
- arbor - A graph visualization library using web workers and jQuery.
- vega - A visualization grammar.
- fabric.js - JavaScript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser.
- metrics-graphics - A library optimized for concise, principled data graphics and layouts.
- svg.js - A lightweight library for manipulating and animating SVG.
-
-
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.
-
-
Reactive Programming
-
Runner
- Cycle.js - A functional and reactive JavaScript library for cleaner code.
-
-
Log
-
Runner
- minilog - side logging with Stream-API backends.
-
-
RegExp
-
Machine Learning
-
Runner
- ml5.js - Friendly Machine Learning for the Web.
-
-
Validation
-
Runner
- FormValidation - The best jQuery plugin to validate form fields. Formerly BootstrapValidator.
-
-
Sliders
-
Runner
- slidesJs - Is a responsive slideshow plug-in for JQuery(1.7.1+) with features like touch and CSS3 transitions
-
-
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.
-
-
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.
-
-
Boilerplates
-
Other
- npm run-scripts - scripts.
-
-
Maps
-
Other
- OpenLayers3 - A high-performance, feature-packed library for all your mapping needs.
-
-
Video/Audio
-
Other
- AmplitudeJS - Open Source HTML5 Web Audio Library. Design your web audio player, the way you want. No dependencies required.
-
-
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.
-
-
ES6
-
Other
- ECMAScript 6 compatibility table - Compatibility tables for all ECMAScript 6 features on a variety of environments.
-
-
QA Tools
-
Runner
- prettier - Prettier is an opinionated code formatter.
- husky - Prevents bad git commit, git push and more.
- ESLint - A fully pluggable tool for identifying and reporting on patterns in JavaScript.
- jscs - JavaScript Code Style checker.
- buddy.js - Magic number detection for JavaScript.
- jsinspect - Detect copy-pasted and structurally similar code.
- jsfmt - For formatting, searching, and rewriting JavaScript.
- 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.
- JavaScript Standard Style - Opinionated, no-configuration style guide, style checker, and formatter
- JSHint - JSHint is a tool that helps to detect errors and potential problems in your JavaScript code.
- JSLint - High-standards, strict & opinionated code quality tool, aiming to keep only good parts of the language.
-
-
Node-Powered CMS Frameworks
-
Runner
- Strapi - Open source Node.js Headless CMS to easily build customisable APIs.
- Reaction Commerce - reactive CMS, real-time architecture and design.
- KeystoneJS - powerful CMS and web app framework.
- Cody - CMS with WSYWYG editor.
- Hatch.js - CMS platform with social features.
- Ghost - simple, powerful publishing platform.
- Nodizecms - CMS for CoffeeScript lovers.
- Factor - The Javascript CMS
- Apostrophe - CMS with content editing and essential services.
- We.js - framework for real time apps, sites or blogs.
- TaracotJS - fast and minimalist CMS based on Node.js.
- PencilBlue - CMS and blogging platform.
-
-
Loaders
- systemjs - AMD, CJS & ES6 spec-compliant module loader.
- SeaJS - A Module Loader for the Web.
- RequireJS - A file and module loader for JavaScript.
- HeadJS - The only script in your HEAD.
- script.js - Asynchronous JavaScript loader and dependency manager.
- LodJS - Module loader based on AMD.
- ESL - Module loader browser first, support lazy define and AMD.
- modulejs - Lightweight JavaScript module system.
- lazyload - Tiny, dependency-free async JavaScript and CSS loader.
- browserify - Browser-side require() the node.js way.
-
Component Management
- Bit - Create, find and reuse components (React, Angular, Node etc.) across applications.
-
Templating Engines
-
Runner
- EJS - Effective JavaScript templating.
- handlebars.js - An extension to the Mustache templating language.
- 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.
- mustache.js - Minimal templating with {{mustaches}} in JavaScript.
- nunjucks - A rich and powerful templating language for JavaScript from Mozilla.
- doT - The fastest + concise JavaScript template engine for nodejs and browsers.
- hogan.js - A compiler for the Mustache templating language.
- swig - (Archived) A simple, powerful, and extendable Node.js and browser-based JavaScript template engine.
- xtemplate - eXtensible Template Engine lib for node and the browser
- t.js - A tiny JavaScript templating framework in ~400 bytes gzipped.
- JavaScript-Templates - < 1KB lightweight, fast & powerful JavaScript templating engine with zero dependencies.
- hmpl - Server-oriented customizable templating for JavaScript.
- dustjs - Asynchronous templates for the browser and node.js.
- eco - Embedded CoffeeScript templates.
-
Programming Languages
Categories
MVC Frameworks and Libraries
44
Testing Frameworks
34
Data Visualization
31
Misc
15
Templating Engines
15
QA Tools
12
Node-Powered CMS Frameworks
12
Package Managers
12
Game Engines
11
Loaders
10
Bundlers
10
Type Checkers
7
Table/Grid
4
Documentation
4
Animations
3
Articles and Posts
3
RegExp
2
Frameworks
2
Log
1
Boilerplates
1
I18n And L10n
1
Maps
1
Validation
1
ES6
1
Component Management
1
Sliders
1
Video/Audio
1
Transpilers
1
Machine Learning
1
Reactive Programming
1
Sub Categories
Keywords
javascript
60
nodejs
13
typescript
13
framework
11
react
10
testing
8
vue
7
angular
6
svg
6
tdd
6
test
5
web
5
canvas
5
es6
5
performance
5
automation
5
node
5
awesome-list
5
graphql
4
vdom
4
jsx
4
data-visualization
4
visualization
4
testing-tools
4
awesome
4
dom
4
browser
4
webdriver
4
graph
4
compiler
4
module-bundler
3
visual-programming
3
amd
3
jasmine
3
frontend
3
virtual-dom
3
test-framework
3
webgl
3
html5
3
cms
3
linter
3
jamstack
3
loader
3
phantomjs
3
workflow
3
chart
3
charts
3
mocha
3
d3
3
bdd
3