fucking-awesome-javascript
🐢 A collection of awesome browser-side JavaScript libraries, resources and shiny things. 😎 Awesome lists about all kinds of interesting topics. With repository stars⭐ and forks🍴
https://github.com/correia-jpv/fucking-awesome-javascript
Last synced: about 3 hours ago
JSON representation
-
QA Tools
-
Runner
- 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.
- jsfmt - For formatting, searching, and rewriting JavaScript.
- jsinspect - Detect copy-pasted and structurally similar code.
- buddy.js - Magic number detection for JavaScript.
- 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.
- 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.
- 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.
-
-
Package Managers
- 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.
- 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.
-
Component Management
-
Loaders
- RequireJS - A file and module loader for JavaScript.
- browserify - Browser-side require() the node.js way.
- 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.
- RequireJS - A file and module loader for JavaScript.
- browserify - Browser-side require() the node.js way.
- 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.
-
Bundlers
- webpack - Packs CommonJs/AMD modules for the browser.
- 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+
- 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
- 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.
- Zod - TypeScript-first schema validation with built-in static type inference.
- TypL - the JavaScript Type Linter with a bias on type inference.
- Zod - TypeScript-first schema validation with built-in static type inference.
-
Testing Frameworks
-
Frameworks
- mocha - Simple, flexible, fun JavaScript test framework for node.js & the browser.
- jasmine - DOM-less simple JavaScript testing framework.
- 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.
- jest - Painless JavaScript Unit Testing.
- 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.
- tape - Tap-producing test harness for node and browsers.
- TestCafe - Automated browser testing for the modern web development stack.
- ava - 🚀 Futuristic JavaScript test runner
- qunit - An easy-to-use JavaScript Unit Testing framework.
- jest - Painless JavaScript Unit Testing.
- 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.
- tape - Tap-producing test harness for node and browsers.
- TestCafe - Automated browser testing for the modern web development stack.
- ava - 🚀 Futuristic JavaScript test runner
-
Assertion
- chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
- react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
- 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
- chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
- react testing library - Simple and complete React DOM testing utilities that encourage good testing practices.
- 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
-
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.
- 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.
-
Runner
- phantomjs - Scriptable Headless WebKit.
- slimerjs - A PhantomJS-like tool running Gecko.
- 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.
- puppeteer - Headless Chrome Node.js API by official Google Chrome team.
- 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.
- 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.
- puppeteer - Headless Chrome Node.js API by official Google Chrome team.
- 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.
-
-
MVC Frameworks and Libraries
-
Runner
- 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.
- 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.
- way.js - Simple, lightweight, persistent two-way databinding.
- 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.
- 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.
- 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
- 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.
- inferno - 🔥 An extremely fast, React-like JavaScript library for building modern user interfaces.
- Lucia - 3kb library for tiny web apps.
- Adonis - The Node.js Framework highly focused on developer ergonomics, stability and confidence.
- GrapesJS - Free and Open source Web Builder Framework. Next generation tool for building templates without coding.
- 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.
-
-
Node-Powered CMS Frameworks
-
Runner
- 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
-
-
Templating Engines
-
Runner
- mustache.js - Minimal templating with {{mustaches}} in JavaScript.
- handlebars.js - An extension to the Mustache templating language.
- hogan.js - A compiler for the Mustache templating language.
- doT - The fastest + concise JavaScript template engine for nodejs and browsers.
- dustjs - Asynchronous templates for the browser and node.js.
- 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.
-
-
Data Visualization
-
Runner
- d3 - A JavaScript visualization library for HTML and SVG.
- metrics-graphics - A library optimized for concise, principled data graphics and layouts.
- three.js - JavaScript 3D library.
- 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.
- 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.
- visjs - Multiple Libraries for dynamic, browser-based data visualization.
- 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.
-
Programming Languages
Categories
Sub Categories
Keywords
javascript
89
typescript
19
testing
18
nodejs
15
tdd
12
framework
10
angular
10
web
10
react
10
test
10
automation
10
browser
9
vue
9
module-bundler
8
performance
8
node
8
testing-tools
8
webdriver
8
es6
7
loader
6
compiler
6
amd
6
commonjs
6
svg
6
phantomjs
6
end-to-end-testing
6
firefox
6
jasmine
6
bdd
6
mocha
6
test-framework
6
jsx
5
headless
5
graphql
5
canvas
5
css
5
html
5
workflow
4
linter
4
headless-chrome
4
chromium
4
chrome
4
qunit
4
headless-testing
4
headless-browsers
4
slimerjs
4
web-performance
4
selenium
4
front-end
4
clean-code
4