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

awesome-javascript

A Curated List of Awesome JavaScript Frameworks, Libraries, Tools and Resources
https://github.com/iwanjunaid/awesome-javascript

Last synced: 1 day ago
JSON representation

  • Web Frameworks

    • AngularJS - HTML enhanced for web apps. AngularJS lets you extend HTML vocabulary for your application.
    • Backbone.js - Give your JS app some Backbone with Models, Views, Collections, and Events.
    • Marionette - Simplifies your Backbone application code with robust views and architecture solutions.
    • Diet - A tiny, fast and modular node.js web framework. Good for making fast & scalable apps and apis.
    • AquaJS - A Node.js Framework for your next API development. It gives you a quick and organized way to start developing an application.
    • Marionette - Simplifies your Backbone application code with robust views and architecture solutions.
    • Diet - A tiny, fast and modular node.js web framework. Good for making fast & scalable apps and apis.
    • AquaJS - A Node.js Framework for your next API development. It gives you a quick and organized way to start developing an application.
    • Restify - Node.js REST framework specifically meant for web service APIs.
    • MERN - A scaffolding tool which makes it easy to build isomorphic apps using Mongo, Express, React and NodeJS.
    • Total.js - Free web application framework for building Web sites and Web applications using JavaScript, HTML and CSS. Node.js (HMVC) web application framework.
    • MEAN - An opinionated fullstack javascript framework (MongoDB, Express, Angular and Node.JS) - which simplifies and accelerates web application development.
    • Hapi - A rich framework for building applications and services. It enables developers to focus on writing reusable application logic instead of spending time building infrastructure.
    • Meatier - A Meteor alternative. Like Meteor but Meatier.
  • Testing

    • Intern - Software testing for humans.
    • Intern - Software testing for humans.
    • Jest - A delightful JavaScript Testing Framework with a focus on simplicity.
    • QUnit - A powerful, easy-to-use JavaScript unit testing framework. It's used by the jQuery, jQuery UI and jQuery Mobile projects and is capable of testing any generic JavaScript code, including itself!
  • CLI

    • Vorpal - A framework that makes it easy to build mature, immersive command-line applications in JavaScript.
    • Vorpal - A framework that makes it easy to build mature, immersive command-line applications in JavaScript.
    • how2 - Stackoverflow from the terminal.
    • Inquirer.js - A collection of common interactive command line user interfaces.
    • Cash - A cross-platform implementation of Unix shell commands written in pure ES6.
  • Functional Programming

    • Torrent

      • Lazy.js - Similar to Underscore and Lodash, but with an underlying engine that supports many more use cases than those libraries, while offering comparable or superior performance in most scenarios.
      • Underscrore - JavaScript library that provides a whole mess of useful functional programming helpers without extending any built-in objects.
      • Lodash - A modern JavaScript utility library delivering modularity, performance, & extras.
      • Lazy.js - Similar to Underscore and Lodash, but with an underlying engine that supports many more use cases than those libraries, while offering comparable or superior performance in most scenarios.
      • Vitals - Do more with less. A simple, high-performing, functional JavaScript library.
  • String

    • Torrent

      • Chance - A minimalist generator of random strings, numbers, etc. to help reduce some monotony particularly while writing automated tests or anywhere else you need anything random.
      • faker.js - Generate massive amounts of fake data in Node.js and the browser.
  • Number

    • Torrent

      • Numeral.js - A javascript library for formatting and manipulating numbers.
      • Accounting.js - A tiny JavaScript library providing simple and advanced number, money and currency formatting.
      • Numeral.js - A javascript library for formatting and manipulating numbers.
  • WYSIWYG

    • Torrent

      • ContentTools - A JS library for building WYSIWYG editors for HTML content.
      • MediumEditor - Medium.com WYSIWYG editor clone. Uses contenteditable API to implement a rich text solution.
  • PDF

    • Torrent

      • pdfmake - Client/server side PDF printing in pure JavaScript.
      • pdfmake - Client/server side PDF printing in pure JavaScript.
      • PDFkit - A JavaScript PDF generation library for Node and the browser.
      • PDF.js - A Portable Document Format (PDF) viewer that is built with HTML5.
  • Image Processing

    • Torrent

      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • CamanJS - A combination of a simple-to-use interface with advanced and efficient image/canvas editing techniques.
      • Jimp - An image processing library written entirely in JavaScript for Node, with zero external or native dependencies.
  • Audio

    • Torrent

      • SoundJS - A JavaScript library that provides a simple API, and powerful features to make working with audio a breeze.
      • JuliusJS - A speech recognition library for the web.
  • Resources

  • UI Libraries

    • Preact - Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
  • UI Interaction Libraries

    • Hammer.js - A javascript library for multi-touch gestures.
    • Slick - The last carousel you'll ever need.
  • Process Manager

    • Forever - A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).
    • nodemon - Monitor for any changes in your node.js application and automatically restart the server - perfect for development.
    • node-supervisor - A little supervisor script for nodejs. It runs your program, and watches for code changes, so you can have hot-code reloading-ish behavior, without worrying about memory leaks and making sure you clean up all the inter-module references, and without a whole new require system.
    • PM2 - Production process manager for Node.js applications with a built-in load balancer.
  • Control Flow

    • Async - A utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript.
    • q - A tool for creating and composing asynchronous promises in JavaScript.
    • Bluebird - A full featured promise library with unmatched performance.
    • When.js - A solid, fast Promises/A+ and when() implementation, plus other async goodies.
    • Co - The ultimate generator based flow-control goodness for nodejs (supports thunks, promises, etc).
  • DOM

    • Cheerio - Fast, flexible, and lean implementation of core jQuery designed specifically for the server.
    • jQuery - Fast, small, and feature-rich JavaScript library.
  • Real-time

    • Primus - The creator god of transformers but now also known as universal wrapper for real-time frameworks.
    • SocketCluster - Highly scalable realtime microframework.
    • Deepstream.io - A clusterable server that provides everything necessary to build powerful realtime applications.
    • Socket.io - The fastest and most reliable real-time engine. Works on every platform, browser or device, focusing equally on reliability and speed.
    • Faye - A publish-subscribe messaging system based on the Bayeux protocol.
  • Logging

    • Winston - A multi-transport async logging library for Node.js.
    • Bunyan - A simple and fast JSON logging module for Node.js services.
  • Profiling

    • 0x - Single-command flamegraph profiling.
    • Clinic.js - Tools to help diagnose and pinpoint Node.js performance issues.
  • HTTP

    • SuperAgent - A small progressive client-side HTTP request library, and Node.js module with the same API, sporting many high-level HTTP client features.
    • Request - Simplified HTTP request client.
    • Nock - HTTP mocking and expectations library.
    • node-http-proxy - A full-featured http proxy for Node.js.
    • http-server - A simple zero-configuration command-line http server.
  • Network

    • Email

      • Nodemailer - Send e-mails with Node.JS – easy as cake!
      • emailjs - Send emails, html and attachments (files, streams and strings) from node.js to any smtp server
      • node-imap - An IMAP client module for Node.js.
    • SSH

      • SSH2 - SSH2 client and server modules written in pure JavaScript for Node.js.
    • FTP

      • node-ftp - An FTP client module for Node.js.
    • Torrent

      • Torrent - Download torrents with node from the CLI.
  • Git

    • Torrent

      • NodeGit - Native Node bindings to Git.
  • Date

    • Torrent

      • Date - Date for humans.
      • Moment.js - Parse, validate, manipulate, and display dates in JavaScript.
  • ASCII

    • Torrent

      • blessed-contrib - Build dashboards (or any other application) using ascii/ansi art and javascript.
      • blessed - A curses-like library with a high level terminal interface API for node.js.
      • oo-ascii-tree - Renders ASCII trees from an object-oriented object graph.
  • Linter

    • Torrent

      • JSLint - The JavaScript code quality tool.
  • Editors

    • Torrent

      • NTVS - A free, open source plugin that turns Visual Studio into a Node.js IDE. It is designed, developed, and supported by Microsoft and the community.
      • Abricotine - A markdown editor for desktop.
  • CMS

    • Torrent

      • Relax - New generation CMS on top of React, Redux and GraphQL.
  • Animation

    • Torrent

      • mo.js - Motion graphics toolbelt for the web.
  • Data Visualization

    • Torrent

      • Timesheet.js - JavaScript library for HTML5 & CSS3 time sheets.
      • D3.js - A JavaScript library for manipulating documents based on data and helps you bring data to life using HTML, SVG, and CSS.
  • Package Managers and Sources

    • NPM - Node Package Manager.
    • Atmosphere - The trusted source for Meteor packages.
  • ORM

    • Sequelize - A promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite and Microsoft SQL Server.
    • Bookshelf.js - A JavaScript ORM for Node.js, built on the Knex SQL query builder.
    • Objection.js - An SQL-friendly ORM for Node.js
  • Migration

    • migrate - Abstract migration framework for node.
  • Regular Expression

    • Torrent

      • VerbalExpressions - A JavaScript library that helps to construct difficult regular expressions.
  • Math

    • Torrent

      • NumJs - A npm/bower package for scientific computing with JavaScript.
  • Data Structure

    • Torrent

      • Buckets - A complete, fully tested and documented data structure library written in pure JavaScript.
      • TreeModel - Manipulate and traverse tree-like structures in javascript.
  • Blog Engine

    • Torrent

      • Ghost - An open source publishing platform which is beautifully designed, easy to use, and free for everyone.
      • Hexo.io - A fast, simple & powerful blog framework.
  • Data Processing

    • Torrent

      • EclairJS - Node.js API for Apache Spark with Remote Client.
  • Keyboard

    • Torrent

      • Mousetrap - A simple library for handling keyboard shortcuts in Javascript.
      • Keymaster - A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies.
  • Video

  • Robotics and IoT

    • Torrent

      • Johnny-Five - The JavaScript robotics programming framework.
      • Cylon.js - Next generation robotics framework with support for 43 different platforms.
  • Science

    • Satellite

      • Himawari - Download real-time images of Earth from the Himawari-8 satellite.
  • Miscellaneous Libraries

    • Satellite

      • is.js - Micro check library.
  • Desktop App

    • Satellite

      • N1 - An open-source mail client built on the modern web with Electron, React, and Flux.
      • Wmail - The missing desktop client for Gmail & Google Inbox. Bringing the Gmail & Google Inbox experience to your desktop in a neatly packaged app.