Browse free open source JavaScript Libraries and projects below. Use the toggles on the left to filter open source JavaScript Libraries by OS, license, language, programming language, and project status.

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • Train ML Models With SQL You Already Know Icon
    Train ML Models With SQL You Already Know

    BigQuery automates data prep, analysis, and predictions with built-in AI assistance.

    Build and deploy ML models using familiar SQL. Automate data prep with built-in Gemini. Query 1 TB and store 10 GB free monthly.
    Start Free
  • 1
    jquerygantt

    jquerygantt

    Lightweight jQuery gantt plugin

    A jquery plugin for creating a gantt chart.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 2

    js-librarian

    JS library for those folks who prefer plain javascript over jQuery.

    libCommon - Some common functions used in javascript, libLogger - Extended logging capabilities, libAjax - Ajax wrapper, libLocalStorage - localStorage with data catching.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 3
    jsMultiCalendar JS script

    jsMultiCalendar JS script

    Free javascript calendar for date picking

    jsMultiCalendar is a free javascript used to emulate a calendar (for data picking). It is optimized to provide high speed of execution, flexibility and aesthetics. Parameterization is very simple, colors change can be quick done in CSS. Here are seven key features that differentiates this from similar script: It is multilingual, it can dynamically select one of six languages. It allows dynamic formatting of data display depending on the context. You can automatic close the form after selecting the date. Can be locked prior data current selection. The style of the date display is distinguished by its status It allows you to pick the dates for one or more data fields in the same form. Automatic positioning of the form depending on call location. Besides the fact that this script includes all these facilities, their setting can be done dynamically "on the fly", depending on individual requirements. Setting can be done using a dedicated function.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 4
    jscodeshift

    jscodeshift

    A JavaScript codemod toolkit

    jscodeshift is a toolkit for running codemods over multiple JavaScript or TypeScript files. It provides A runner, which executes the provided transform for each file passed to it. It also outputs a summary of how many files have (not) been transformed. A wrapper around recast, providing a different API. Recast is an AST-to-AST transform tool and also tries to preserve the style of original code as much as possible. As already mentioned, jscodeshift also provides a wrapper around recast. In order to properly use the jscodeshift API, one has to understand the basic building blocks of recast (and ASTs) as well. An AST node is a plain JavaScript object with a specific set of fields, in accordance with the Mozilla Parser API. The primary way to identify nodes is via their type. It's OK to not know the structure of every AST node type. The (esprima) AST explorer is an online tool to inspect the AST for a given piece of JS code.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • 5
    jsf-showcase

    jsf-showcase

    JavaServer Faces (JSF) v.2.2.x showcase, portable web-application.

    JavaServer Faces (JSF) v.2.2.x web-framework showcase. Portable web-application for Java WEB-developers, who use Java Server Faces. Made for convenience - if Internet access suddenly down ). See please excellent projects: https://github.com/liferay/liferay-faces-showcase/ and https://github.com/heroku/webapp-runner/ , also https://mvnrepository.com/search?q=webapp-runner and https://mvnrepository.com/search?q=com.liferay.faces.demo .
    Downloads: 0 This Week
    Last Update:
    See Project
  • 6
    json-forms

    json-forms

    JSON Schema to HTML form generator, supporting dynamic subschemas

    JSON Schema to HTML form generator, supporting dynamic subschemas (on-the-fly resolution). Extensible and customizable library with zero dependencies. Bootstrap add-ons provided. This library supports dynamic schemas, that is, subschemas that can change depending on the value of other parts of the data. This allows the creation of dynamic forms that vary their shape depending on the values entered by the user. This is extremely useful for big autogenerated schemas, that aggregate lots of subschemas and have functional bindings, given that it allows to show the user a simpler, non-error-prone form, also avoiding asking for unneeded data.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 7

    jsphp

    Pseudo-implementation of JavaScript for PHP 5.3+

    jsphp is a pseudo-implementation of the ECMA 262 standard (JavaScript 8.5.1) for PHP 5.3+, including JSBoolean, JSNumber, JSString, JSObject, JSArray, JSFunction, JSRegExp, JSDate, JSError and JSMath, aswell as prototype inheritence and chaining.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 8
    k-skill

    k-skill

    Skill collection for Koreans - SRT, KTX, KakaoTalk, Hangul

    The k-skill project is an AI skill management framework designed to organize, structure, and execute reusable capabilities within AI-driven development environments. It focuses on defining skills as modular, composable units that can be invoked by agents to perform specific tasks such as coding, reasoning, or automation. The system provides a standardized structure for skills, enabling consistency across different workflows and improving interoperability between tools. It is designed to integrate with modern AI agent ecosystems, allowing developers to extend functionality without rewriting core logic. The project emphasizes simplicity and modularity, making it easier to manage large collections of skills in complex environments. It also supports extensibility, enabling users to define custom skills tailored to their needs. Overall, k-skill serves as a foundational layer for building structured and scalable AI agent capabilities.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 9

    kZoom Image Zooming

    kZoom Image Zooming is a javascript library

    Javascript library to zoom images. Support Internet Explorer 9, Firefox 9 and Google Chrome 16. Not tested on other browsers.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Go from Code to Production URL in Seconds Icon
    Go from Code to Production URL in Seconds

    Cloud Run deploys apps in any language instantly. Scales to zero. Pay only when code runs.

    Skip the Kubernetes configs. Cloud Run handles HTTPS, scaling, and infrastructure automatically. Two million requests free per month.
    Start Free
  • 10
    koa-generator

    koa-generator

    Koa' application generator for 1.x and 2.x

    koa-generator is an open-source command-line scaffolding utility that creates starter applications for the Koa Node.js web framework. Inspired by Express Generator, it provides a familiar workflow for initializing structured web projects. The software supports both Koa 1.x and Koa 2.x through separate generation commands. Generated applications include the basic configuration, middleware structure, and files needed to begin development. Users can select template engines such as Jade, EJS, Handlebars, Nunjucks, and Hogan. The generator also offers options for creating Git ignore files and controlling output directory behavior. Koa 2 templates support modern middleware patterns, including async/await. The project is distributed through npm and is primarily suited to older Koa development environments.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 11
    launchjs

    launchjs

    Rapidly Develop Websites with Less Coding.

    Launchjs is rapid application development framework built utilizing JavaScript. It allows you to quickly build your web sites using JavaScript without a lot of extra typing. It combines groups of functions that have been commonly used to develop web pages. One of the great things about Launchjs is that it allows you easily change the selector used to call functions. Another great feature is that the code base is well organized and you can import just some of the functions from the library if don't think you will need them all. New features will be added to Launchjs as they are needed or introduced. So feel free to make any suggestions of what you would like to become part of the Launchjs Library.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 12
    lax.js

    lax.js

    Library to create smooth & beautiful animations when you scroll

    Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll. Lax.js 2.0 has been completely re-written with a focus on modularity and flexibility giving you more tools to create awesome animations. To implement lax you need to create at least one driver, to provide values for animations, as well as the element animation bindings. The easiest way to get started is to use presets via html classes. Multiple presets can be chained together and they can be customised to suit your needs. Use the preset explorer to explore effects and see a simple example here. To increase performance, lax.js indexes the list of elements to animate when the page loads. If you're using a library like React, Vue or EmberJS, it is likely that you are adding elements after the initial window.onload. Because of this you will need to call lax.addElements when you add components to the DOM that you want to animate.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 13
    liblzg is a minimal implementation of an LZ77 class compression library. The main characteristic of the library is that the decoding routine is very simple, fast and requires no memory.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    libpku

    libpku

    Private compilation of curriculum materials in your school

    libpku is a community-driven repository that collects and organizes university course materials, lecture notes, past exams, problem sets, and student-compiled summaries—primarily for Peking University, but also including contributions from other institutions. Its mission is to make hard-to-find, experience-based educational content more openly accessible, so that students don’t have to reinvent what prior generations of learners already collected. The repository is organized into folders by course or subject, where contributors upload PDFs, slides, summaries, and guides (subject to copyright constraints). The project provides a web interface (via a GitHub Pages site) where users can browse and download specific materials conveniently. It maintains a contribution policy encouraging students and alumni to submit missing materials, error corrections, or course commentaries.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    lite-server

    lite-server

    Lightweight node server

    lite-server is a lightweight development server designed to simplify local web development by providing live reloading and static file serving with minimal configuration. It is commonly used for front-end projects, particularly those built with frameworks like Angular, where rapid feedback during development is essential. The server automatically reloads the browser when files change, reducing the need for manual refreshes and speeding up the development cycle. It is built on top of BrowserSync, which enables synchronized testing across multiple devices and browsers. Lite Server requires very little setup, often configured with a simple JSON file or default settings. It supports serving static files, proxying API requests, and customizing server behavior through configuration options. The tool is designed to be easy to integrate into existing workflows, especially when used alongside task runners or package scripts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    loadable components

    loadable components

    The recommended code splitting library for React

    Loadable Components is an MIT-licensed open source project. It's an independent project with ongoing development. React code splitting made easy. Reduce your bundle size without stress. A React code splitting library, not an alternative to React.lazy. A solution recommended by React Team. Library splitting, prefetching, server side rendering, and full dynamic import features.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    lottery

    lottery

    Annual Meeting Lottery Procedure

    lottery is a browser-based lottery drawing program designed for company annual meetings and event prize draws. It gives organizers a visual way to select winners from a participant pool. The workflow lets users choose a draw size, start the lottery animation, and stop it to generate the final results. It supports draw sizes such as 30, 10, 5, 2, or 1 winner at a time. After a participant wins, the app marks that person so they are not selected again in later rounds. It also includes an interactive sphere-style display that can be zoomed in or out with the mouse wheel, making it feel more dynamic for live events.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    m2m-js

    m2m-js

    Vanilla js Libraries

    m2m-js is a set of various Vanilla js libraries. Vanilla js. Vanilla Javascript/ Sortable Grid / Repeater / List library. Form Validation. Easy Field Binding. Supports Template based development. Supports Component Based development. Custom Components like Calendar. Observer-Observable sample. 'Update UI On State Change' in a few lines of code. Fully re-written in ES8.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    mPagesJS JavaScript Library
    mPagesJS is a JavaScript Framework that provides a core interface into all client-side functionality within Cerner Millennium Pages - MPages. mPagesJS makes MPage development quicker and easier.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Magix cjQuery est un framework PHP 5 permettant de manipuler jQuery dans le code PHP. Une abstraction de base de donnée rapide et simple, permet de mettre en place une communication dynamique avec vos bases de donnée.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    markdown-pdf

    markdown-pdf

    Markdown to PDF converter

    Node module that converts Markdown files to PDFs. The PDF looks great because it is styled by HTML5 Boilerplate. What? - Yes! Your Markdown is first converted to HTML, then pushed into the HTML5 Boilerplate index.html. Phantomjs renders the page and saves it to a PDF. You can even customise the style of the PDF by passing an optional path to your CSS and you can pre-process your markdown file before it is converted to a PDF by passing in a pre-processing function, for templating.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    mathjs

    mathjs

    An extensive math library for JavaScript and Node.js

    mathjs is a comprehensive mathematics library for JavaScript and Node.js that provides advanced numerical, symbolic, and matrix computation capabilities through a flexible expression-based interface. The library supports a wide range of mathematical operations including algebra, statistics, complex numbers, fractions, units, matrices, and symbolic manipulation while maintaining compatibility across browsers and server environments. One of its defining features is its expression parser, which allows users to evaluate and manipulate mathematical expressions written in a natural math-like syntax. mathjs is highly modular, enabling developers to include only the functionality they need for optimized application size and performance. The project is widely used in scientific computing, educational software, calculators, engineering tools, and data analysis applications. Its architecture combines accessibility for beginners.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Messi is a REST ajax framework for java and php. Database is manipulated transparently via SQL statements using javascript. Records are fetched to browser as scrollable dataset linked to data-aware JS widges such as editable grid and various fields.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    metismenu

    metismenu

    A collapsible jQuery menu plugin

    A collapsible jQuery menu plugin. This version does not support any version of IE browser. Setting aria-disabled="true" in the <a> element as shown will stop metisMenu from opening the menu for that particular list.
    Downloads: 0 This Week
    Last Update:
    See Project