List of JavaScript libraries
   HOME

TheInfoList



OR:

This is a list of notable
JavaScript libraries A JavaScript library is a library of pre-written JavaScript code that allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies. Libraries With the expanded demands for JavaScript, an ...
.


Constraint programming

* Cassowary (software) *
CHR.js Constraint Handling Rules (CHR) is a declarative, rule-based programming language, introduced in 1991 by Thom Frühwirth at the time with European Computer-Industry Research Centre (ECRC) in Munich, Germany.Thom Frühwirth. ''Theory and Practice ...


DOM (manipulation) oriented

*
Google Polymer Polymer is an open-source JavaScript library for building web applications using Web Components. The library is being developed by Google developers and contributors on GitHub. Modern design principles are implemented as a separate project usin ...
*
Dojo Toolkit Dojo Toolkit (stylized as dōjō toolkit) is an open-source modular JavaScript library (or more specifically JavaScript toolkit) designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was ...
*
jQuery jQuery is a JavaScript library designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax. It is free, open-source software using the permissive MIT License. As of Aug 2022, jQuery is u ...
* midori *
MooTools MooTools (My Object-Oriented Tools) is a lightweight, object-oriented JavaScript framework. It is released under the free, open-source MIT License. Overview MooTools provides the user with a number of options beyond native JavaScript. These inc ...
*
Prototype JavaScript Framework The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js. Prototype is di ...


Graphical/visualization (canvas or SVG related)

*
AnyChart AnyChart is a JavaScript library for cross-platform data visualization in the form of interactive charts and dashboards. It was initially available as a Flash chart component and integrated as such by Oracle in APEX. History AnyChart was first ...
* Babylon.js *
Chart.js Chart.js is a free, open-source JavaScript library for data visualization, which supports eight chart types: bar, line, area, pie (doughnut), bubble, radar, polar, and scatter. Created by London-based web developer Nick Downie in 2013, now it is ...
*
Cytoscape Cytoscape is an open source bioinformatics software platform for visualizing molecular interaction networks and integrating with gene expression profiles and other state data. Additional features are available as plugins. Plugins are available fo ...
*
D3.js D3.js (also known as D3, short for Data-Driven Documents) is a JavaScript library for producing dynamic, interactive data visualizations in web browsers. It makes use of Scalable Vector Graphics (SVG), HTML5, and Cascading Style Sheets (CSS) sta ...
*
Dojo Toolkit Dojo Toolkit (stylized as dōjō toolkit) is an open-source modular JavaScript library (or more specifically JavaScript toolkit) designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was ...
*
FusionCharts FusionCharts, part of InfoSoft Global (P) Ltd, is a privately held software provider of data visualization products (JavaScript Charts, Maps, Widgets and Dashboards) with offices in Bangalore and Kolkata, India. FusionCharts has 23,000 custome ...
*
Google Charts Google Charts is an interactive Web service that creates graphical charts from user-supplied information. The user supplies data and a formatting specification expressed in JavaScript embedded in a Web page; in response the service sends an im ...
*
Highcharts Highcharts is a software library for charting written in pure JavaScript, first released in 2009. The license is proprietary. It is free for personal/non-commercial uses and paid for commercial applications. It was created by Highsoft in ...
*
JavaScript InfoVis Toolkit The JavaScript InfoVis Toolkit provides tools for creating Interactive Data Visualizations for the Web. The toolkit implements advanced features of information visualization like TreeMaps, an adapted visualization of trees based on the SpaceTree ...
* p5.js *
Plotly Plotly is a technical computing company headquartered in Montreal, Quebec, that develops online data analytics and visualization tools. Plotly provides online graphing, analytics, and statistics tools for individuals and collaboration, as well a ...
*
Processing.js Processing is a free graphical library and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities with the purpose of teaching non-programmers the fundamentals of computer programmin ...
* Raphaël *
RGraph RGraph is an HTML5 software library for charting written in native JavaScript. It was created in 2008. RGraph started as an easy-to-use commercial tool based on HTML5 canvas only. It became freely available to use under the open-source MIT licens ...
* seen.js *
SWFObject SWFObject (originally FlashObject) is an open-source JavaScript library used to embed Adobe Flash content onto Web pages and to protect the flash game against piracy, which is supplied as one small JavaScript file. The library can also detect the ...
*
Teechart TeeChart is a charting library for programmers, developed and managed by Steema Software of Girona, Catalonia, Spain. It is available as commercial and non-commercial software. TeeChart has been included in most Delphi and C++Builder products si ...
*
Three.js Three.js is a cross-browser JavaScript library and application programming interface (API) used to create and display animated 3D computer graphics in a web browser using WebGL. The source code is hosted in a repository on GitHub. Overview ...
* Velocity.js *
Verge3D Verge3D is a real-time renderer and a toolkit used for creating interactive 3D experiences running on websites. Overview Verge3D enables users to convert content from 3D modelling tools (Autodesk 3ds Max and Blender are currently supported) to ...
*
Webix Webix is a JavaScript/HTML5/ CSS3 UI toolkit for developing complex and dynamic cross-platform web applications. Features Webix consists of GUI controls, widgets, complex widgets and online tools: Snippet Tool, Form Builder, and Skin Builder. ...


GUI (Graphical user interface) and widget related

*
Angular (application platform) Angular (also referred to as "Angular 2+") is a TypeScript-based, free and open-source web application framework led by the Angular Team at Google and by a community of individuals and corporations. Angular is a complete rewrite from the same t ...
by Google *
AngularJS AngularJS is a discontinued free and open-source JavaScript-based web framework for developing single-page applications. It was maintained mainly by Google and a community of individuals and corporations. It aimed to simplify both the development ...
by Google * Bootstrap * Dojo Widgets *
Ext JS Ext JS is a JavaScript application framework for building interactive cross-platform web applications using techniques such as Ajax, DHTML and DOM scripting. It can be used as a simple component framework (for example, to create dynamic grids on ...
by Sencha *
Foundation Foundation may refer to: * Foundation (nonprofit), a type of charitable organization ** Foundation (United States law), a type of charitable organization in the U.S. ** Private foundation, a charitable organization that, while serving a good cause ...
by ZURB *
jQuery UI jQuery UI is a collection of GUI widgets, animated visual effects, and themes implemented with jQuery (a JavaScript library), Cascading Style Sheets, and HTML. Using the Shodan search engine query term cpe:"cpe:/a:jquery/jquery_ui" we can dete ...
*
jQWidgets jQWidgets is a software framework with widgets (graphical control elements), themes, input validation, drag & drop plug-in, data adapters, built-in WAI-ARIA accessibility, internationalization and MVVM support. It is built on the open stan ...
*
OpenUI5 OpenUI5 is a JavaScript application framework designed to build cross-platform, responsive, enterprise-ready applications. It is an open-source project maintained by SAP SE available under the Apache 2.0 license and open to contributions. OpenUI ...
by SAP *
Polymer (library) Polymer is an open-source JavaScript library for building web applications using Web Components. The library is being developed by Google developers and contributors on GitHub. Modern design principles are implemented as a separate project usin ...
by Google *
qooxdoo qooxdoo is an open-source Ajax web application framework. It is an LGPL- and/or EPL-licensed client-side and server-agnostic solution, and includes support for professional JavaScript development, a graphical user interface (GUI) toolkit an ...
*
React.js React (also known as React.js or ReactJS) is a free and open-source front-end JavaScript library for building user interfaces based on components. It is maintained by Meta (formerly Facebook) and a community of individual developers and compa ...
by Facebook * Vue.js *
Webix Webix is a JavaScript/HTML5/ CSS3 UI toolkit for developing complex and dynamic cross-platform web applications. Features Webix consists of GUI controls, widgets, complex widgets and online tools: Snippet Tool, Form Builder, and Skin Builder. ...
*
WinJS The Windows Library for JavaScript (abbreviated as WinJS) is an open-source JavaScript library developed by Microsoft. It has been designed with the primary goal of easing development of Windows Store apps for Windows 8 and Windows 10, as well as ...
*
Svelte Svelte is a free and open-source front end component framework or language created by Rich Harris and maintained by the Svelte core team members. Svelte is not a monolithic JavaScript library imported by applications: instead, Svelte compiles H ...


No longer actively developed

* Glow *
Lively Kernel The Lively Kernel is an open-source web programming environment. It supports desktop-style applications with rich graphics and direct manipulation abilities, but without the installation or upgrade troubles of conventional desktop applications. D ...
*
Script.aculo.us The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js. Prototype is dist ...
* YUI Library


Pure JavaScript/Ajax

* Google Closure Library * Joose * JsPHP * Microsoft's Ajax library *
MochiKit MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito. Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour. This has made it useful in ...
*
PDF.js PDF.js is a JavaScript library that renders Portable Document Format (PDF) files using the web standards-compliant HTML5 Canvas. The project is led by the Mozilla Corporation after Andreas Gal launched it (initially as an experiment) in 2011 ...
*
Socket.IO Socket.IO is an event-driven library for real-time web applications. It enables real-time, bi-directional communication between web clients and servers. It consists of two parts: a client-side library that runs in the browser, and a server-sid ...
*
Spry framework The Spry Framework is an open source Ajax framework developed by Adobe Systems which is used in the construction of Rich Internet applications. Unlike other pure JavaScript frameworks such as the Dojo Toolkit and Prototype, Spry is geared toward ...
*
Underscore.js Underscore.js is a JavaScript library which provides utility functions for common programming tasks. It is comparable to features provided by Prototype.js and the Ruby language, but opts for a functional programming design instead of extending o ...


Template systems

*
jQuery Mobile jQuery Mobile is a touch-optimized web framework (also known as a mobile framework), specifically a JavaScript library, developed by the jQuery project team. The development focuses on creating a framework compatible with many smartphones and ta ...
*
Mustache A moustache (; en-US, mustache, ) is a strip of facial hair grown above the upper lip. Moustaches have been worn in various styles throughout history. Etymology The word "moustache" is French, and is derived from the Italian ''mustaccio'' ( ...
* Jinja-JS * Twig.js


Unit testing

*
Jest A joke is a display of humour in which words are used within a specific and well-defined narrative structure to make people laugh and is usually not meant to be interpreted literally. It usually takes the form of a story, often with dialogue, ...
*
Jasmine Jasmine ( taxonomic name: ''Jasminum''; , ) is a genus of shrubs and vines in the olive family (Oleaceae). It contains around 200 species native to tropical and warm temperate regions of Eurasia, Africa, and Oceania. Jasmines are widely culti ...
* Mocha *
QUnit QUnit is a JavaScript unit testing framework. Originally developed for testing jQuery, jQuery UI and jQuery Mobile, it is a generic framework for testing any JavaScript code. It supports client-side environments in web browsers, and server-s ...
*
Unit.js Unit.js is an open source unit testing framework for the JavaScript programming language, running on Node.js and the browser. Usage A simple hello world test looks like the code below. var example = 'Hello world!'; test.string(example ...


Web-application related (MVC, MVVM)

*
Angular (application platform) Angular (also referred to as "Angular 2+") is a TypeScript-based, free and open-source web application framework led by the Angular Team at Google and by a community of individuals and corporations. Angular is a complete rewrite from the same t ...
by Google *
AngularJS AngularJS is a discontinued free and open-source JavaScript-based web framework for developing single-page applications. It was maintained mainly by Google and a community of individuals and corporations. It aimed to simplify both the development ...
by Google *
Backbone.js Backbone.js is a JavaScript rich-client web app framework based on the model–view–controller design paradigm, intended to connect to an API over a RESTful JSON interface. Backbone is known for being lightweight, as its only hard dependency i ...
*
Echo In audio signal processing and acoustics, an echo is a reflection of sound that arrives at the listener with a delay after the direct sound. The delay is directly proportional to the distance of the reflecting surface from the source and the lis ...
* Ember.js *
Enyo Enyo (; grc, Ἐνυώ, Enȳṓ) is a goddess of war in Greek mythology. She frequently is associated with the war god Ares. Description She is called the "sister of War" by Quintus Smyrnaeus, in a role closely resembling that of Eris, the ...
*
Express.js Express.js, or simply Express, is a back end web application framework for building RESTful APIs with Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been c ...
*
Ext JS Ext JS is a JavaScript application framework for building interactive cross-platform web applications using techniques such as Ajax, DHTML and DOM scripting. It can be used as a simple component framework (for example, to create dynamic grids on ...
*
Google Web Toolkit Google Web Toolkit (GWT ), or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. It is licensed under the Apache License 2.0. GWT emphasizes reusab ...
*
JavaScriptMVC JavaScriptMVC is an open-source rich Internet application framework based on jQuery and OpenAjax. It extends those libraries with a model–view–controller architecture and tools for testing and deployment. Because it does not depend on serve ...
* JsRender/JsViews *
Knockout A knockout (abbreviated to KO or K.O.) is a fight-ending, winning criterion in several full-contact combat sports, such as boxing, kickboxing, muay thai, mixed martial arts, karate, some forms of taekwondo and other sports involving strikin ...
*
Meteor A meteoroid () is a small rocky or metallic body in outer space. Meteoroids are defined as objects significantly smaller than asteroids, ranging in size from grains to objects up to a meter wide. Objects smaller than this are classified as mi ...
*
Mojito Mojito (; ) is a traditional Cuban punch. The cocktail often consists of five ingredients: white rum, sugar (traditionally sugar cane juice), lime juice, soda water, and mint. Its combination of sweetness, citrus, and herbaceous mint flavors ...
*
MooTools MooTools (My Object-Oriented Tools) is a lightweight, object-oriented JavaScript framework. It is released under the free, open-source MIT License. Overview MooTools provides the user with a number of options beyond native JavaScript. These inc ...
*
Next.js Next.js is an open-source web development framework created by Vercel enabling React-based web applications with server-side rendering and generating static websites. React documentation mentions Next.js among "Recommended Toolchains" advising ...
*
OpenUI5 OpenUI5 is a JavaScript application framework designed to build cross-platform, responsive, enterprise-ready applications. It is an open-source project maintained by SAP SE available under the Apache 2.0 license and open to contributions. OpenUI ...
by SAP *
Polymer (library) Polymer is an open-source JavaScript library for building web applications using Web Components. The library is being developed by Google developers and contributors on GitHub. Modern design principles are implemented as a separate project usin ...
by Google *
Prototype JavaScript Framework The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js. Prototype is di ...
* PureMVC *
qooxdoo qooxdoo is an open-source Ajax web application framework. It is an LGPL- and/or EPL-licensed client-side and server-agnostic solution, and includes support for professional JavaScript development, a graphical user interface (GUI) toolkit an ...
*
React.js React (also known as React.js or ReactJS) is a free and open-source front-end JavaScript library for building user interfaces based on components. It is maintained by Meta (formerly Facebook) and a community of individual developers and compa ...
*
SproutCore SproutCore is an open-source JavaScript web framework. Its goal is to allow developers to create web applications with advanced capabilities and a user experience comparable to that of desktop applications. When developing a SproutCore applicatio ...
* Vue.js * Wakanda Framework


Other

*
Blockly Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0. It ...
*
Cannon.js Cannon.js is an open source JavaScript 3D physics engine created by Stefan "schteppe" Hedman. Unlike physics engine libraries ported from C++ to JavaScript, cannon.js is written in JavaScript from the start and can take advantage of its features. ...
*
MathJax MathJax is a cross-browser JavaScript library that displays mathematical notation in web browsers, using MathML, LaTeX and ASCIIMathML markup. MathJax is released as open-source software under the Apache License. The MathJax project sta ...
* Modernizr *
TensorFlow TensorFlow is a free and open-source software library for machine learning and artificial intelligence. It can be used across a range of tasks but has a particular focus on training and inference of deep neural networks. "It is machine learnin ...
* Brain.js


See also

*
Ajax framework Ajax may refer to: Greek mythology and tragedy * Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea * Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris * ''Ajax'' (play), by the ancient Greek ...
*
Comparison of JavaScript frameworks This is a comparison of web frameworks for front-end web development Front-end web development is the development of the graphical user interface of a website, through the use of HTML, CSS, and JavaScript, so that users can view an ...
{{ECMAScript *
JavaScript library A JavaScript library is a library of pre-written JavaScript code that allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies. Libraries With the expanded demands for JavaScript, an ea ...