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.

  • 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.
    Get Started Free
  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • 1
    SendGrid Node.js Library

    SendGrid Node.js Library

    The Official Twilio SendGrid Led, Community Driven Node.js API Library

    The SendGrid Node.js Library provides a simple interface for sending emails through SendGrid's API, enabling developers to integrate email functionalities into Node.js applications.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 2
    carbone

    carbone

    Fast and simple report generator, from JSON to pdf, xslx, docx, odt

    Turn your JSON into PDF, DOCX, XLSX, PPTX, ODS and many more. Fast, Simple and Powerful report generator in any format PDF, DOCX, XLSX, ODT, PPTX, ODS, XML, CSV using templates and your JSON data as input.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 3
    egjs

    egjs

    Javascript components group that brings easiest way to build web apps

    egjs is Javascript components group that brings easiest and fastest way to build a web application in your way.
    Downloads: 7 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: 7 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Try Free
  • 5
    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: 7 This Week
    Last Update:
    See Project
  • 6
    mongoose-paginate-v2

    mongoose-paginate-v2

    A custom pagination library for Mongoose with customizable labels

    mongoose-paginate-v2 is a pagination library having a page wrapper. The main usage of the plugin is you can alter the return value keys directly in the query itself so that you don't need any extra code for transformation. The initial idea of this plugin is loosely based on the mongoose-paginate package by github.com/edwardhotchkiss/. So this can be considered as an upgraded version of mongoose-paginate with many more options.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 7
    pixelmatch

    pixelmatch

    The smallest, simplest JavaScript pixel-level image comparison library

    The smallest, simplest and fastest JavaScript pixel-level image comparison library, originally created to compare screenshots in tests. Features accurate anti-aliased pixels detection and perceptual color difference metrics. Inspired by Resemble.js and Blink-diff. Unlike these libraries, pixelmatch is around 150 lines of code, has no dependencies, and works on raw typed arrays of image data, so it's blazing fast and can be used in any environment (Node or browsers). Compares two images, writes the output diff and returns the number of mismatched pixels.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 8
    react-window

    react-window

    React components for rendering large lists and tabular data

    React window works by only rendering part of a large data set (just enough to fill the viewport). This helps address some common performance bottlenecks. It reduces the amount of work (and time) required to render the initial view and to process updates. It reduces the memory footprint by avoiding over-allocation of DOM nodes. react-window is a complete rewrite of react-virtualized. If react-window provides the functionality your project needs, it is strongly recommend that you use it instead of react-virtualized. However if you need features that only react-virtualized provides, you have two options. Use react-virtualized. (It's still widely used by a lot of successful projects!). Or, create a component that decorates one of the react-window primitives and adds the functionality you need. You may even want to release this component to NPM (as its own, standalone package)!
    Downloads: 7 This Week
    Last Update:
    See Project
  • 9
    timeago

    timeago

    The original jQuery plugin that makes it easy to support automatically

    Timeago is a jQuery plugin that makes it easy to support automatically updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago") from ISO 8601 formatted dates and times embedded in your HTML (à la microformats).
    Downloads: 7 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.
    Try it free
  • 10
    v8n

    v8n

    JavaScript fluent validation library

    v8n aims to be the most fluent and simple validation library for use in any context. The API is beautifully readable and allows for easy creation of complex validations in any part of your app. Even though there are many useful default validation methods, it's a breeze to add your own fluent rules to v8n and use them anywhere in your app. The name v8n is actually derived from the structure of the word "validation". If you look closely you will find that between the v and the n, there are precisely 8 letters (a l i d a t i o). So we get from the sort of boring word validation to the very nice-looking acronym v8n.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 11
    DevExtreme

    DevExtreme

    HTML5 JavaScript Component Suite for Responsive Web Development

    DevExtreme is a comprehensive, enterprise-grade JavaScript UI component suite developed by DevExpress, designed to help developers build highly interactive, data-driven web applications across multiple frontend frameworks. It supports major ecosystems such as Angular, React, Vue, and jQuery, allowing teams to maintain consistency while working across different stacks. The library includes more than 80 components covering data grids, charts, schedulers, forms, editors, and navigation elements, making it suitable for complex business applications like dashboards, CRM systems, and SaaS platforms. A key strength of DevExtreme is its built-in data layer, which enables efficient handling of large datasets, real-time updates, and server-side operations such as filtering and sorting. The components are responsive and accessible, ensuring compatibility across devices, screen sizes, and assistive technologies.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 12
    Flow Typed

    Flow Typed

    A central repository for Flow library definitions

    High-quality library definitions for Flow. flow-typed is a repository of third-party library interface definitions for use with Flow. When you start a project with Flow, you likely want to use some third-party libraries that were not written with Flow. By default, Flow will just ignore these libraries leaving them untyped. As a result, Flow can't give errors if you accidentally misuse the library (nor will it be able to auto-complete the library). To address this, Flow supports library definitions which allow you to describe the interface of a module or library separate from the implementation of that module/library. The flow-typed repo is a collection of high-quality library definitions, tests to ensure that definitions remain high quality, and tools to make it as easy as possible to import them into your project. All you have to do when you add one or more new dependencies to your project is run flow-typed install.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 13
    Gantt-elastic - Javascript Gantt Chart

    Gantt-elastic - Javascript Gantt Chart

    Gantt Chart [ javascript gantt chart, gantt component, vue gantt)

    Gantt Chart, JavaScript Gantt chart, Gantt component, vue Gantt, vue Gantt chart, responsive Gantt, project manager, vue projects.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 14
    Globby

    Globby

    User-friendly glob matching

    Globby is a user-friendly glob matching library for Node.js, built on top of fast-glob, offering enhanced features for file pattern matching.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 15
    MatCaps

    MatCaps

    Huge library of matcap PNG textures organized by color

    Matcaps is a comprehensive library of matcap (material capture) PNG textures organized by color, providing artists and developers with a wide range of materials for 3D modeling and rendering. Matcaps simplifies the process of applying consistent and realistic materials to 3D models, enhancing visual quality without the need for complex shader setups.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    Moment.js

    Moment.js

    Parse, validate, manipulate, and display dates in javascript

    Moment is a JavaScript date and time library that simplifies parsing, formatting, arithmetic, and humanizing of dates. It supports many formats in input and output, internationalization (i18n), locale-based month/day names, relative time (for example, “3 days ago”), and chaining of operations (adding, subtracting, diffing). Developers often use it for calendar displays, scheduling, and manipulating times across time zones or daylight saving transitions. While it makes working with date strings convenient, moment maintains internal mutability, which has trade-offs with safety and chainability. Over time, newer alternatives with immutable and modular designs have emerged, but moment remains widely known and integrated in many legacy projects. Its comprehensive feature set and ease of use made it a standard for date-time handling in JavaScript for many years.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 17
    Pattern Lab Node

    Pattern Lab Node

    The Node version of Pattern Lab

    This monorepo contains the core of Pattern Lab / Node and all related engines, UI kits, plugins, and utilities. Pattern Lab helps you and your team build thoughtful, pattern-driven user interfaces using atomic design principles.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 18
    Phaser 3 Webpack Loader

    Phaser 3 Webpack Loader

    Asset loader for Phaser + Webpack.

    Phaser Webpack Loader is a plugin that streamlines the process of loading game assets in Phaser projects using Webpack. It facilitates parallel asset loading and integrates with Webpack's module system for efficient game development.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 19
    RTCMultiConnection

    RTCMultiConnection

    RTCMultiConnection is a WebRTC JavaScript library

    RTCMultiConnection is a JavaScript library for building peer-to-peer WebRTC applications in the browser. It helps developers create audio calls, video calls, screen sharing, file sharing, and media streaming experiences. The project abstracts many low-level WebRTC details so applications can focus on rooms, sessions, users, and media behavior. It works with a separate Socket.IO signaling server that handles connection setup between peers. The repository includes demos, documentation links, installation guidance, and integration notes for Node.js applications. It is useful for developers prototyping real-time communication apps without building every WebRTC layer manually.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 20
    React Slick

    React Slick

    React carousel component

    This library is the port of jQuery slick library. React slick is a carousel component built with React. It is a react port of slick carousel. The easiest way to try out react-slick is using the Code Sandbox example. After you are done installing through yarn or npm, now you will have to include CSS in your project. But be aware slick-carousel has a peer-dependancy on jQuery which you, or your colleagues may not like to see in your console output, so you can always grab the CSS from there and convert it into any CSS in JS solution that you might be using.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 21
    SuperAgent

    SuperAgent

    Ajax for Node.js and browsers (JS HTTP client)

    SuperAgent is light-weight progressive ajax API crafted for flexibility, readability, and a low learning curve after being frustrated with many of the existing request APIs. It also works with Node.js! Small progressive client-side HTTP request library, and Node.js module with the same API, supporting many high-level HTTP client features. Browser-ready versions of this module are available via jsdelivr, unpkg, and also in the node_modules/superagent/dist folder in downloads of the superagent package. If you are using browserify, webpack, rollup, or another bundler, then you can follow the same usage as Node. SuperAgent is easily extended via plugins. The Node client supports making requests to Unix Domain Sockets. DELETE, HEAD, PATCH, POST, and PUT requests can also be used, simply change the method name. Absolute URLs can be used. In web browsers absolute URLs work only if the server implements CORS.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 22
    Svelte forms lib

    Svelte forms lib

    A lightweight library for managing forms in Svelte

    Svelte Forms lib is a Formik-inspired library for building forms easily in a Svelte project. When building modern web applications forms often play a big part in it. We use forms to log in, place orders, book flights and perform other data-entry tasks. In developing a form, it's important to create a flow that guides the user efficiently and effectively through the workflow. This library helps you build forms by exposing an easy API for form creation, validation and submission.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 23
    SweetModal

    SweetModal

    The sweetest library to happen to modals.

    The sweetest library to happen to modals, is now available for Vue.js.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 24
    TailAdmin

    TailAdmin

    Free and Open-source Tailwind CSS Dashboard Admin Template

    TailAdmin is a free and open source admin dashboard template built with Tailwind CSS, designed to help developers quickly create data-driven web applications and backend interfaces. It provides a complete starting point for dashboards, including prebuilt pages, layouts, and UI components that are commonly required in admin panels and control systems. The template is built using a combination of HTML, Tailwind CSS, Alpine.js, and modern build tools, making it lightweight while still offering interactive functionality. TailAdmin includes essential features such as charts, tables, authentication forms, and navigation components, enabling developers to assemble full dashboards without starting from scratch. It also supports multiple frameworks, including React, Next.js, Vue, Angular, and Laravel, making it highly adaptable to different development stacks. With responsive design and dark mode support built in, it ensures usability across devices and environments.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 25
    WTFJS

    WTFJS

    A list of funny and tricky JavaScript examples

    WTFJS is a curated collection of JavaScript “gotchas” and puzzling examples that reveal surprising corners of the language. Each entry presents a small snippet, explains why the behavior occurs, and ties it back to the specification or engine rules. The repository covers coercion quirks, edge-case comparisons, floating-point oddities, prototype traps, and scoping pitfalls, among others. It’s designed as both a fun read and a serious learning aid, helping developers build an intuition for how JavaScript evaluates expressions. By highlighting common misconceptions, it encourages safer coding patterns and more reliable mental models. Teachers, interviewers, and learners use it to spark discussion and deepen understanding of JavaScript’s semantics.
    Downloads: 6 This Week
    Last Update:
    See Project