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

awesome-javascript

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

Last synced: 19 days ago
JSON representation

Animations

Other

  • Anime.js - A JavaScript animation engine.
  • Mo.js - Motion graphics toolbelt for the web.
  • velocity - Accelerated JavaScript animation.
  • jquery.transit - Super-smooth CSS3 transformations and transitions for jQuery.
  • bounce.js - Create tasty CSS3 powered animations in no time.
  • TransitionEnd - TransitionEnd is an agnostic and cross-browser library to work with transitioned event.
  • Dynamic.js - JavaScript library to create physics-based CSS animations.
  • the-cube - The Cube is an experiment with CSS3 transitions.
  • Effeckt.css - A Performant Transitions and Animations Library.
  • textillate - A simple plugin for CSS3 text animations.
  • move.js - CSS3 backed JavaScript animation framework.
  • animatable - One property, two values, endless possibilities.
  • shuffle-images - The Simplest Way to shuffle through images in a Creative Way.
  • smoothState.js - Unobtrusive page transitions with jQuery.
  • particles.js - A lightweight JavaScript library for creating particles.
  • particles-bg - A lightweight React particles animation background component.
  • barbajs - It helps you create fluid and smooth transitions between your website's pages.
  • typicaljs - Animated typing in ~400 bytes 🐡 of JavaScript
  • GreenSock-JS - High-performance HTML5 animations that work in all major browsers.
  • tsParticles - A new and improved version of particles.js with bug fixes and many new features.
  • animate.css - A cross-browser library of CSS animations. As easy to use as an easy thing.
  • AutoAnimate - Add motion to your apps with a single line of code.

API

Runner

  • axios - Promise based HTTP client for the browser and node.js.
  • bottleneck - A powerful rate limiter that makes throttling easy.
  • oauth-signature-js - JavaScript OAuth 1.0a signature generator for node and the browser.
  • amygdala - RESTful HTTP client for JavaScript powered web applications.
  • jquery.rest - A jQuery plugin for easy consumption of RESTful APIs.
  • Rails Ranger - An opinionated REST client for Ruby on Rails APIs.
  • wretch - A tiny wrapper built around fetch with an intuitive syntax.
  • Optic - Optic automatically documents and tests your APIs.
  • SWR - React Hooks library for remote data fetching.
  • SWRV - Stale-while-revalidate data fetching for Vue.
  • Vue Query - Hooks for fetching, caching and updating asynchronous data in Vue.
  • FarFetch - Modern Fetch API wrapper for simplicity, with concise file uploading.

Articles and Posts

Runner

Benchmark

Runner

  • benchmark.js - A benchmarking library. As used on jsPerf.com.
  • matcha - A caffeine driven, simplistic approach to benchmarking.
  • bencher - A suite of continuous benchmarking tools designed to catch performance regressions in CI.

Boilerplates

Other

  • npm run-scripts - scripts.
  • 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.
  • webplate - An awesome front-end framework that lets you stay focused on building your site or app while remaining really easy to use.
  • Cerberus - A few simple, but solid patterns for responsive HTML emails. Even in Outlook.
  • full-page-intro-and-navigation - An intro page with a full width background image, a bold animated menu and an iOS-like blurred effect behind the navigation.
  • Fluid-Squares - A fluid grid of square units.
  • Mobile-First-RWD - An example of a mobile-first responsive web design.
  • this-is-responsive - This Is Responsive.
  • Wasp - specific language for developing, building, and deploying modern Javascript full-stack web apps with less code.

Browser Detection

Runner

  • bowser - a browser detector.

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
  • Vite - Next Generation Frontend Tooling.
  • bundle - A quick online npm package size checker.

Code highlighting

Runner

  • Highlight.js - JavaScript syntax highlighter.
  • PrismJS - Lightweight, robust, elegant syntax highlighting.
  • shiki - Code highlighter powered by VS Code TextMate grammars. Accurate, themeable, works in Node or browser, great for JS and TS.

Color

Runner

  • randomColor - A color generator for JavaScript.
  • chroma.js - JavaScript library for all kinds of color manipulations.
  • color - JavaScript color conversion and manipulation library.
  • colors - Smarter defaults for colors on the web.
  • PleaseJS - JavaScript Library for creating random pleasing colors and color schemes.
  • TinyColor - Fast, small color manipulation and conversion for JavaScript.
  • Vibrant.js - Extract prominent colors from an image.
  • color-space - Conversions between 162 color spaces (OKLCH, CAM16, Munsell, camera logs) with cited references.

Component Management

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

Control Flow

Runner

  • async - Async utilities for node and the browser.
  • q - A tool for making and composing asynchronous promises in JavaScript.
  • when - A solid, fast Promises/A+ and when() implementation, plus other async goodies.
  • ObjectEventTarget - Provide a prototype that add support to event listeners (with same behavior of EventTarget from DOMElements available on browsers).
  • sporadic - Composable concurrency abstractions (such as streams, coroutines and Go-like channels) on top of promises, for Node and browser engines.
  • step - An async control-flow library that makes stepping through logic easy.
  • Bluebird - fully featured promise library with focus on innovative features and performance.
  • contra - Asynchronous flow control with a functional taste to it.

Data Structure

Runner

  • mori - A library for using ClojureScript's persistent data structures and supporting API from the comfort of vanilla JavaScript.
  • buckets - A complete, fully tested and documented data structure library written in JavaScript.
  • hashmap - Simple hashmap implementation that supports any kind of keys.
  • ngraph.graph - Graph data structure in javascript.
  • js-sdsl - Refer to the javascript standard data structure library implemented by c++ stl, which supports c++ bidirectional iterator mode.
  • immutable-js - Immutable Data Collections including Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector.

Data Visualization

Runner

  • visjs - Multiple Libraries for dynamic, browser-based data visualization.
  • 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.
  • 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.
  • peity - Progressive 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.
  • 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.
  • chartist-js - Simple responsive charts.
  • epoch - A general purpose real-time charting library.
  • c3 - D3-based reusable chart library.
  • BabylonJS - A framework for building 3D games with HTML 5 and WebGL.
  • recharts - Redefined chart library built with React and D3.
  • GraphicsJS - A lightweight JavaScript graphics library with the intuitive API, based on SVG/VML technology.
  • mxGraph - Diagramming library that enables interactive graph and charting applications to be quickly created that run natively in any major browser that is supported by its vendor.
  • Frappe Charts - GitHub-inspired simple and modern SVG charts for the web with zero dependencies.
  • Frappe Gantt - A simple, interactive, modern gantt chart library for the web.
  • G2 - A highly interactive data-driven visualization grammar for statistical charts.
  • G2Plot - An interactive and responsive charting library. Based on the grammar of graphics.
  • Cytoscape.js - A fully featured graph theory library.
  • jointjs - Diagramming library to create static diagrams or fully interactive diagramming tools.
  • vizzu - Library for animated data visualizations and data stories.
  • G6 - A graph visualization engine.
  • Infographic - A next-generation declarative infographic visualization engine.
  • metrics-graphics - A library optimized for concise, principled data graphics and layouts.
  • fabric.js - JavaScript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser.
  • dimple.js - Easy charts for business analytics powered by d3.

Date

Runner

  • moment - Parse, validate, manipulate, and display dates in JavaScript.
  • moment-timezone - Timezone support for moment.js.
  • jquery-timeago - A jQuery plugin that makes it easy to support automatically updating fuzzy timestamps (e.g. "4 minutes ago").
  • timezone-js - Timezone-enabled JavaScript Date object. Uses Olson zoneinfo files for timezone data.
  • date - Date() for humans.
  • timeago.js - Simple library (less then 2kb) used to format date with *** time ago statement.
  • fecha - Lightweight date formatting and parsing (~2KB). Meant to replace parsing and formatting functionality of moment.js.
  • date-fns - Modern JavaScript date utility library.
  • dayjs - Day.js 2KB immutable date library alternative to Moment.js with the same modern API.
  • luxon - Luxon is a library for working with dates and times in JavaScript.
  • tempo - Parsing, formatting, and timezones — Tempo is a small tree-shakable library for native Date objects.
  • countdown.js - Super simple countdowns.
  • ms.js - Tiny millisecond conversion utility.
  • map-countdown - A browser countdown built on top of the Google Maps.

Documentation

Runner

Editors

Runner

  • 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).
  • jquery-notebook - A simple, clean and elegant text editor. Inspired by the awesomeness of Medium.
  • bootstrap-wysiwyg - Tiny bootstrap-compatible WYSIWYG rich text editor.
  • editor - A markdown editor. still on development.
  • EpicEditor - An embeddable JavaScript Markdown editor with split fullscreen editing, live previewing, automatic draft saving, offline support, and more.
  • jsoneditor - A web-based tool to view, edit and format JSON.
  • vim.js - JavaScript port of Vim with a persistent ~/.vimrc.
  • Squire - HTML5 rich text editor.
  • TinyMCE - The JavaScript Rich Text editor.
  • trix - A rich text editor for everyday writing. By Basecamp.
  • Trumbowyg - A lightweight and amazing WYSIWYG JavaScript editor.
  • Draft.js - A React framework for building text editors.
  • bootstrap-wysihtml5 - Simple, beautiful wysiwyg editor
  • 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.
  • raptor-editor - Raptor, an HTML5 WYSIWYG content editor!
  • popline - Popline is an HTML5 Rich-Text-Editor Toolbar.
  • Summernote - Super simple WYSIWYG editor.
  • Everright-formEditor - A visual drag-and-drop low-code form editor
  • ckeditor-releases - The best web text editor for everyone.

ES6

Other

Files

Runner

  • 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.
  • jsPDF - JavaScript PDF generation.
  • PDF.js - PDF Reader in JavaScript.
  • File Viewer - Browser-native components for previewing files without server-side conversion.

Form Widgets

Calendar

  • pickadate.js - The mobile-friendly, responsive, and lightweight jQuery date & time input picker.
  • fullcalendar - Full-sized drag & drop event calendar (jQuery plugin).