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.

  • 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.
    Try Free
  • Full-stack observability with actually useful AI | Grafana Cloud Icon
    Full-stack observability with actually useful AI | Grafana Cloud

    Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

    Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
    Create free account
  • 1
    lodash

    lodash

    Modern JavaScript utility library delivering modularity & performance

    A modern JavaScript utility library delivering modularity, performance & extras. Lodash makes JavaScript easier by taking the hassle out of working with arrays, numbers, objects, strings, etc. Lodash’s modular methods are great for iterating arrays, objects, & strings, manipulating & testing values, and creating composite functions. Lodash is available in a variety of builds & module formats. Lodash is released under the MIT license & supports modern environments. Review the build differences & pick one that’s right for you. Lodash is available in a variety of builds & module formats. Tested in Chrome 74-75, Firefox 66-67, IE 11, Edge 18, Safari 11-12, & Node.js 8-12.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 2
    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
  • 3
    ui-neumorphism

    ui-neumorphism

    React component library designed on the "new skeuomorphism"

    UI-metamorphism is a react component library designed on the "new skeuomorphism" UI/UX trend.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 4
    Chokidar

    Chokidar

    Minimal and efficient cross-platform file watching library

    Chokidar is a solution for all the users of Node.js fs.watch who are tired of it not reporting filenames on MacOS and events at all when using editors like Sublime on MacOS. Node.js fs.watch often reports events twice, emits most changes as rename, and it does not provide an easy way to recursively watch file trees nor supports recursive watching on Linux. Same as with Node.js fs.watchFile. Therefore, Chokidar resolves these problems. Initially made for Brunch (an ultra-swift web app build tool), it is now used in Microsoft's Visual Studio Code, gulp, karma, PM2, browserify, webpack, BrowserSync, and many others. It has proven itself in production environments. Chokidar does still rely on the Node.js core fs module, but when using fs.watch and fs.watchFile for watching, it normalizes the events it receives, often checking for truth by getting file stats and/or dir contents.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Access competitive interest rates on your digital assets.

    Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • 5
    Express ES2017 REST API Boilerplate

    Express ES2017 REST API Boilerplate

    Express starter for building RESTful APIs

    A boilerplate for building RESTful APIs with Node.js and Express, providing a pre-configured structure for efficient backend development.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    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
  • 7
    GoJS

    GoJS

    JavaScript diagramming library for interactive flowcharts & org charts

    Build interactive flowcharts or flow diagrams. Let your users build, modify, and save diagrams with JSON model output. Visualize state charts and other behavior diagrams. Create diagrams with live updates to monitor state, or interactive diagrams for planning. GoJS allows considerable customization of links and nodes to build all kinds of diagrams. Visualize flow, or connect pipes. Create genogram and medical diagrams, or editable family trees with collapsible levels. Create classic org charts for viewing or editing. Automatic layouts make different visualization options easy. Dynamically add ports and custom link routing. Use data-bindings to save and load routes within the Model JSON. Use groups as containers and subgraphs, with group members bound by their own rules and layouts. Model industrial processes, workflows, SCADA diagrams and more.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8
    Highway

    Highway

    Highway - A Modern Javascript Transitions Manager

    Highway is a lightweight (2.5ko gzipped), easy-to-use, flexible, and modern library to create AJAX navigations with animations on websites. Don't bother about all the processes behind the scenes and focus on creative animations.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 9
    LaTeX.CSS

    LaTeX.CSS

    LaTeX.css is a library that makes your website look like a LaTeX doc

    This almost class-less CSS library turns your HTML document into a website that looks like a LATEX document. Write semantic HTML, and you are good to go. The source code can be found on GitHub. LaTeX.css is a minimal, almost class-less CSS library that makes any website look like a LaTeX document. Add any optional classes to elements with special styles (author subtitle, abstract, lemmas, theorems, etc.). The labels of theorems, definitions, lemmas and proofs can be changed to other supported languages by including the snippet provided in addition to the main CSS file. Sidenotes can be used as an alternative to footnotes, where the user does not have to jump to the bottom of the page to read it. On mobile, click the superscript to reveal the note. Add a class of left to the span with the sidenote class to make the note appear on the left side of the page on instead of right.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • 10
    Lightbox2

    Lightbox2

    The original Lightbox script (v2)

    Lightbox is small javascript library used to overlay images on top of the current page. It's a snap to setup and works on all modern browsers. Lightbox2 has been tested successfully in the following browsers, Internet Explorer, Chrome, Safari, Firefox, iOS Safari, iOS Chrome, Android Browser, and Android Chrome. The lightbox-plus-jquery.js file includes jQuery v2.x and supports IE 9+. If you want to support IE 6, 7, and 8, use your own copy of jQuery v1.x with lightbox.js. Lightbox is free to use in both commercial and non-commercial work. Make sure jQuery, which is required by Lightbox, is also loaded.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 11
    MUI Core

    MUI Core

    React components for faster and easier web development

    MUI Core (formerly Material-UI) consists of React components for faster and easier web development, with options for creating your own design system or starting with Material design. MUI components work without any additional setup, and don't pollute the global scope.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 12
    Node Binance API

    Node Binance API

    Node Binance API is an asynchronous node.js library

    This project is designed to help you make your own projects that interact with the Binance API. You can stream candlestick chart data, market depth, or use other advanced features such as setting stop losses and iceberg orders. This project seeks to have complete API coverage including WebSockets.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 13
    NoteDiscovery

    NoteDiscovery

    Your Self-Hosted Knowledge Base

    NoteDiscovery delivers a self-hosted knowledge base and note-taking platform that empowers individuals and teams to create, organize, and explore their notes locally, giving complete control over their data without relying on commercial services. It emphasizes lightweight performance and privacy, storing notes as plain markdown files that can be easily managed, synced, or version controlled while keeping everything on your own server. The interface is modern and responsive, offering themes, tags, interactive note browsing, and visualization tools like graph views for connected ideas, which makes it suitable for personal “second brain” systems or team wikis. Users benefit from features like fast search, outline navigation, favorites, and plugin extensibility, and the platform works well across devices thanks to its responsive design.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 14
    Pac-Man

    Pac-Man

    Pac-Man game written in HTML5 + CSS3 + jQuery with Canvas

    Pac-Man game written in HTML5 + CSS3 + jQuery with Canvas. This WebApp is a Responsive Web Design (RWD) website.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 15
    PrimeVue

    PrimeVue

    Next Generation Vue UI Component Library

    PrimeVue is a full-featured UI component suite for Vue.js that provides developers with a rich set of customizable components, templates, and design resources for building modern web applications. It is part of the broader Prime ecosystem, which includes similar libraries for other frameworks, and is designed to maximize developer productivity through reusable UI building blocks. The library offers dozens of components covering common interface needs such as forms, data tables, charts, navigation, and layout systems, along with advanced features like accessibility compliance and responsive design. PrimeVue supports both styled and unstyled modes, allowing developers to either use built-in themes or fully customize the appearance using external CSS frameworks like Tailwind. Its architecture includes a monorepo structure with modular packages for core functionality, icons, themes, and integrations with tools like Nuxt.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    Puppeteer

    Puppeteer

    Headless Chrome Node.js API

    Puppeteer is a headless Node library that provides a high level API for controlling Chromium or Chrome over the DevTools protocol. It requires zero setup and comes bundled with the Chromium version most suited to it. Puppeteer is headless by default, making it fast to run. However, it can also be set to run full or non-headless Chrome or Chromium, simply set the headless option when launching a browser. Many of the things you can do manually in the browser, you can also do with Puppeteer such as generate page screenshots and PDFs, crawl a Single-Page Application, test Chrome extensions and more.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 17
    Pusher Channels Javascript Client

    Pusher Channels Javascript Client

    Pusher Javascript library

    Bi-directional hosted APIs that are flexible, scalable and easy to use. We create and maintain complex messaging infrastructure so you can build the realtime features your users need, fast.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 18
    React-WeUI

    React-WeUI

    WeUI Components build with React

    React-WeUI is a React component library that brings WeUI, the interface system associated with WeChat-style mobile design, into the React development workflow. Its purpose is to let developers build mobile-oriented interfaces with React while preserving the visual language and component behavior expected from WeUI. The project combines React components with the underlying WeUI styling, which means teams can work in a modern component architecture instead of manually stitching together markup and CSS for each screen. The repository includes documentation with live examples, installation options for both package managers and browser-based usage, and example code that shows how quickly a page can be assembled from imported components. Because of its heritage, React-WeUI is especially relevant for mobile web experiences, lightweight app-like pages, and products targeting users familiar with WeChat-inspired interaction patterns.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 19
    Riot

    Riot

    Simple and elegant component-based UI library

    Why do we need a new UI library? The frontend space is indeed crowded, but we honestly feel the solution is still “out there”. We believe Riot.js offers the right balance for solving the great puzzle. Riot.js brings custom elements to all modern browsers without the use of any polyfill! A custom element glues relevant HTML and JavaScript together forming a reusable component. It is designed to offer you everything you wished native the web components API looked like. HTML syntax is the de facto language of the web and it’s designed for building user interfaces. The syntax is explicit, nesting is inherent to the language, and attributes offer a clean way to provide options for custom tags. Minimalism sets Riot.js apart from others. One of the design goals was to introduce a powerful tag syntax with as little boilerplate as possible. Riot.js has between 10 and 100 times fewer API methods than other UI libraries.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 20
    SQLite compiled to JavaScript

    SQLite compiled to JavaScript

    A javascript library to run SQLite on the web

    sql.js is a javascript SQL database. It allows you to create a relational database and query it entirely in the browser. You can try it in this online demo. It uses a virtual database file stored in memory, and thus doesn't persist the changes made to the database. However, it allows you to import any existing sqlite file, and to export the created database as a JavaScript typed array. sql.js uses emscripten to compile SQLite to webassembly (or to javascript code for compatibility with older browsers). It includes contributed math and string extension functions. sql.js can be used like any traditional JavaScript library. If you are building a native application in JavaScript (using Electron for instance), or are working in node.js, you will likely prefer to use a native binding of SQLite to JavaScript. A native binding will not only be faster because it will run native code, but it will also be able to work on database files directly instead of having to load the entire database.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 21
    date-fns

    date-fns

    Modern JavaScript date utility library

    date-fns is a modern JavaScript date utility library that offers the most comprehensive toolset for manipulating JavaScript dates in a browser and Node.js. It’s complete and yet simple, because the API is unambiguous, with just one approach to a problem. It’s highly reliable and consistent, always respecting timezones and DST. And it’s also modular, so you don’t have to bloat your project with unnecessary functionality. date-fns supports TypeScript and Flow, and is supported by an amazing community with dozens of locales.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 22
    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: 6 This Week
    Last Update:
    See Project
  • 23
    nivo

    nivo

    A rich set of dataviz components

    nivo provides a rich set of dataviz components, built on top of the awesome d3 and Reactjs libraries. Several libraries already exist for React d3 integration, but just a few provide server side rendering ability and fully declarative charts. In order to use nivo, you have to install the @nivo/core package and then choose some of the scoped @nivo packages according to the charts you wish to use. Given an array of data series having an id and a nested array of points (with x, y properties), it will compute the line for each data series. All datum having null x or y will be treated as holes, thus portions of the corresponding line will be skipped. You can fully customize it using the circleComponent property to define your own, if you wish to do so you should have a look at the default SVG component to get started. Bar chart which can display multiple data series, stacked or side by side. Also supports both vertical and horizontal layout, with negative values descending below the x axis.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 24
    sensitive-fields

    sensitive-fields

    List of sensitive fields that should be purged for security purposes

    List of sensitive fields that should be masked, obfuscated, or purged for security purposes.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 25
    sharp

    sharp

    High performance Node.js image processing module

    The typical use case for this high speed Node.js module is to convert large images in common formats to smaller, web-friendly JPEG, PNG, AVIF and WebP images of varying dimensions. Resizing an image is typically 4x-5x faster than using the quickest ImageMagick and GraphicsMagick settings due to its use of libvips. Colour spaces, embedded ICC profiles and alpha transparency channels are all handled correctly. Lanczos resampling ensures quality is not sacrificed for speed. As well as image resizing, operations such as rotation, extraction, compositing and gamma correction are available. Most modern macOS, Windows and Linux systems running Node.js v10+ do not require any additional install or runtime dependencies. This module supports reading JPEG, PNG, WebP, AVIF, TIFF, GIF and SVG images. Output images can be in JPEG, PNG, WebP, AVIF and TIFF formats as well as uncompressed raw pixel data. Streams, Buffer objects and the filesystem can be used for input and output.
    Downloads: 6 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB