JavaScript:Libraries
lastmod 2026-06-18created 2022-09-29146 edits
Node.js Libraries
A collection of libraries used in the front-end field, such as JavaScript, TypeScript, Node.js, and Npm.
Node.js runtime
- NodeJs:Native: Node.js native(c/c++) developer.
- libuv
- cares
- gtest
- http_parser
- undici
- npm
- openssl
- v8
- zlib
Runtime
- Node.js
- Bun - Fast JavaScript runtime/transpiler/NPM client based on JavaScriptCore
- deno
- edgejs - Secure WebAssembly-based JS runtime
Socket/Websocket
Documentation
Renderer
- Print.js - Saves as a PDF or an image.
- hwp.js
- print-js - Prints to a printer device.
- jscanify - Scan documents and convert them to PDF with Javascript
- react-pdf - React renderer for creating PDF files on the browser and server.
- react-to-pdf
- html2canvas - Copies HTML rendering results to a Canvas.
- jsPDF
Push notification
- node-c2dm
- node-apn
- node-gcm
- node-gcm (ToothlessGear)
- Push.js - Javascript library for setting up notifications on desktops and smartphones. - https://github.com/Nickersoft/push.js
Web frameworks
Backend
Http client
- Node.js:HTTP – the Standard Library
- Request - Simplified HTTP request client - https://github.com/request/request
- Axios - Promise based HTTP client for the browser and node.js - https://github.com/axios/axios
- SuperAgent - Ajax with less suck - (and node.js HTTP client to match) - https://github.com/visionmedia/superagent
- Got - Simplified HTTP requests - https://github.com/sindresorhus/got
- node-fetch
- cross-fetch
SMTP
- Nodemailer - Powered by EmailEngine
Desktop application
- NW.js (node-webkit)
- Electron
- NodeGui
- Tauri - Desktop web app framework that produces small, fast executables
Security & Encryption & Crypto
- Passport
- tus - open protocol for resumable file uploads
- hashids.js - When a web service exposes unique URLs, showing IDs as plain numbers lets people predict IDs or infer things like the number of records, so this is used to generate random strings to send as IDs. The approach YouTube uses. - https://github.com/niieani/hashids.js
- crypto-js - Encryption library; useful when applying encryption to strengthen parameter security between client and server. - https://github.com/brix/crypto-js
Internet privacy
- fingerprint.js - Can be used to track what users do on the web or to identify drop-off points at specific points in a service.
Signature (handling signatures on the web)
- Signature Pad - Canvas-based signature capture Javascript library that handles signatures on the web. - https://github.com/szimek/signature_pad
Authentication
- Auth.js - Authentication library for the web
- AuthKit - The world's best login box powered by WorkOS and Radix.
- Better Auth - Comprehensive auth framework for TypeScript
Client-Side Rendering (CSR)
- Cycle.js: Meetup : TOAST Cloud - Introduction to JavaScript Frameworks 1 - Cycle.js 1
- AngularJS: Meetup : TOAST Cloud - Introduction to JavaScript Frameworks 2 - Angular2 2
- Vue.js: Meetup : TOAST Cloud - Introduction to JavaScript Frameworks 3 - Vue.js 3
- React: Meetup : TOAST Cloud - Introduction to JavaScript Frameworks 4 - React 4
- Svelte
Single Page Application
State Management
Design System
- Storybook - UI component explorer for frontend developers
- kickstartDS - Open-source starter kit for design systems
Dashboard / Administration
- gridstack.js - TypeScript library for building dashboards
Server-Side Rendering (SSR)
Web Components
Polyfill
- URLSearchParams polyfills:
-
url-search-params(deprecated) - @ungap/url-search-params
- qs - A querystring parser with nesting support
-
UI Frameworks
- Recommended React UI Frameworks for 2022 !!!
- Material UI (MUI, mui)
- HyperUI - Free Open Source Tailwind CSS Components
- Headless UI - Completely unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.
- NextUI
- Ant Design - The world's second most popular React UI framework
- LiftKit - UI framework for perfectionists
UI Placeholder
- UI Fillers - Placeholders for design
- ImgSrc.Space - Easy-to-use image/video placeholders
- SQIP - SVG-based image placeholders
- BlurHash - Blurred image placeholder generator
- Lorem Faces - AI-generated faces for avatars
Graphics
See Web Canvas for a longer list.
- PaperJS - HTML canvas vector graphics library
- Konva.js - HTML5 2d canvas js library for desktop and mobile applications
- JS Paint - JavaScript port of MS Paint.
- Skia Canvas (node) - A canvas environment for Node.js
Javascript Game Engines
- 8 Best Javascript Game Engines
- PixiJS
- Phaser
- Babylon.js
- PlayCanvas WebGL Game Engine
- Melon.js
- GDevelop
- Kiwi.js
- Three.js
Table/Grid
- 10 Data Table Libraries for JavaScript
- Cheetah Grid - Open-source ultra-fast data table
- Tabulator
- ag-Grid - https://www.ag-grid.com/
- AnyGrids - https://anygrids.com/
- Backgrid.js - https://backgridjs.com/
- DataTables - https://datatables.net/
- Handsontable - https://handsontable.com/
- jExcel Spreadsheet - https://bossanova.uk/jexcel/v4/
- KendoReact - https://www.telerik.com/kendo-react-ui/
- React DataGrid - https://adazzle.github.io/react-data-grid/
- UI Grid - http://ui-grid.info/
- W2ui - http://w2ui.com/web/home
- TOAST UI Grid - Github - tui.grid
- DataGridXL2.js - Excel-like data table library
- Cheetah-Grid - Open-source ultra-fast data table
- FortuneSheet - Drop-in JS spreadsheet library similar to Excel/Google Sheets
Signing
- Documenso - Open-source alternative to DocuSign
Kanban
- jkanban - Vanilla Javascript plugin for manage kanban boards
TOAST UI
- TOAST UI :: Make Your Web Delicious!
- Chart
- Editor
- Grid
- Calender
- Image-editor
WYSIWYG & Editor
- Quill - WYSIWYG editor Javascript library for writing features on the web. - https://github.com/quilljs/quill
- Summernote - WYSIWYG editor Javascript library for writing features on the web. - https://github.com/summernote/summernote
- WebMemo - Browser-native notepad that runs with no installation and no server (supports Vim mode)
Spreadsheet
- HyperFormula - Open-source Excel-like calculation engine
- Luckysheet - Open-source JS spreadsheet library
CSS
- LESS
- SASS
- Bootstrap
- Material Design Lite
- cosha - Add colored shadows to images
- CSSgram - Instagram filter library built with Sass/CSS
- Buttons
- Tailwind CSS (Tailwindcss)
- XP.css - CSS that recreates the Windows XP style
- SmolCSS - Minimal snippets for modern CSS layouts and components
- Pico.css - Minimal CSS framework
- MVP.css - A minimalist stylesheet
- CSS Bed - No-Class CSS Frameworks
- Animatize - Create animations by dragging objects
- Griffel - Ahead-of-time compilable CSS-in-JS
- Autoprefixer - Adds CSS prefixes for each browser vendor.
- Sorted CSS Colors - A color chart that sorts CSS colors by hue, then by lightness/saturation, and shows their English names/RGB/HSL
- PostCSS - PostCSS is a software development tool that uses JavaScript-based plugins to automate routine CSS operations.
- PurgeCSS - Tool that finds and removes unused CSS
- daisyui
Code compression (Minify)
- Minify
- html-minifier
Code obfuscation (Uglify; Obfuscation)
- Uglify.js
Scroll Box
- Scroll-snap - Snaps the page into the desired position when scrolling stops
- Scrollbar.app - Interactive CSS scrollbar designer
- Infinite Scroll - Javascript library for infinite page scrolling. - https://github.com/metafizzy/infinite-scroll
Font and Icon
- [Recommended] Fontsource - Self-host Open Source fonts in neatly bundled NPM packages.
Carousel libraries
- Flicking - Open-source carousel from Naver's FE team
Query language
Programming language
- JSPyBridge - Bridge for interoperability between Node.js and Python
- pyscript - https://pyscript.net/
- Pyodide - Pyodide is a Python distribution for the browser and Node.js based on WebAssembly.
Template engine
Logging
- morgan - Node.js Logger.
- LogLayer - Unified logger that runs on top of multiple Javascript logging libraries
- LogTape - A new approach to logging for JavaScript libraries
Logging Browser
- frontail - streaming logs to the browser
Boilerplate code (Scaffold)
Front-End UI
- Responsively - Open-source testing tool for responsive web pages
- Material UI (MUI, mui)
- HyperUI - Free Open Source Tailwind CSS Components
- Headless UI - Completely unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.
- NextUI
- Ant Design - The world's second most popular React UI framework
- DaisyUI
- Radix
- Valdi - Cross-platform UI framework with native performance
- Shadcn
Builder
- Loopple - Build dashboards with drag and drop
- Onlook - Custom app-building tool using an open-source Webflow
AI Agent Builder
- Inkeep Agents - Platform for building AI agents with a No-Code builder and a TypeScript SDK
Popup & Alert & Dialog & Toast
- react-hot-toast
- Sweet Alert - Pretty browser-based popup box JavaScript library. - https://sweetalert2.github.io/
- Modaal - Browser-based popup JavaScript library. - https://github.com/humaan/Modaal
- toastr - Javascript library that can show push notifications. - https://github.com/CodeSeven/toastr
Test
- Karma
- Protractor
- Mocha+Chai
- Jasmine
- Jest
- SuperTest
- Tinybench - Lightweight JavaScript benchmarking library
End-to-End Test (e2e)
Bundler
- webpack
- bower
- Vite - Fast bundling using ESM.
- ncc - Compiles a Node.js project into a single file
- Turbopack
- rollup.js
- parcel
- Turborepo - Build system made by Vercel
- Astra - Lightweight, fast JavaScript-To-EXE compiler
Task runner
Deploy
- branch-release
- Astro - Open-source tool that strips as much JS as possible out of existing web frameworks to make websites faster
Web crawler
(crawling/scraping/spider/spiderbot/crawler/scraper all mean the same thing)
- Metascraper - Metadata extraction tool
Database
- MongoDB: Mongoose
- Elasticsearch: elasticsearch.js
- MySQL: node-mysql
- Redis: node_redis
- Knex.js - Multi-DB SQL query builder for Node.js
Search
- MiniSearch - In-memory full-text search engine for JavaScript
Batch
- node-cron
- Node Schedule
- Agenda
Parsing
YAML
JSON
- JSON5 - JSON for humans
Process manager
- StrongLoop Process Manager (recommended)
- PM2
- forever
Any of these three tools can be very helpful, but StrongLoop Process Manager is the only one that provides a comprehensive runtime and deployment solution covering the entire Node.js application lifecycle, with tooling for every step before and after production, through a unified interface.
Below, we take a brief look at each of these three tools. For a detailed comparison of these tools, see http://strong-pm.io/compare/.
Watch service
- nodemon
- supervisor
- pm2
- Chokidar - Efficient cross-platform file watch library
Detects file changes and updates automatically.
Node-based editor (visual programming)
- Rete.js: JavaScript framework for visual programming and creating node editor
- Total.js
- Litegraph.js
- Flume
- Drawflow
Charts & Visualizations
- 7 great utility libraries for data visualization with JavaScript
- d3.js - A leading open-source data visualization library. Graph-specialized open-source extensions keep being built on it, making it the open source at the center of a visualization open-source ecosystem. - https://d3js.org/
- three.js
- Chart.js
- vue-chartjs
- vue-chart-3 - Supports chart.js 3.x.
Gantt chart
- Frappe - Open-source interactive Gantt charts
Timeline
- Planby - Timeline component for React
AD (advertising) related
Analytics
favicon
- Supercookie - Fingerprinting with favicons
- favicons - Favicons generator for Node.js
Storage
LocalStorage, SessionStorage, etc
Cookie
- js-cookie
- next-client-cookies (Nextjs)
- react-cookie (React)
- universal-cookie - Universal cookies for JavaScript
- universal-cookie-express - Hook cookies get/set on Express for server-rendering
Static web server
List of Static Site Generator
- Static Site Generator
- Documentation generator
- Octopress
- Hugo (Golang)
- Pelican
- GatsbyJS (JS+React)
- Jekyll (Ruby)
- Hexo (JavaScript)
- JAMstack
- VuePress
- meli - Open-source hosting platform for static sites
- Netlify
- GitHub Pages
- ROAPI - Generate APIs for static datasets without writing a single line of code
- zola - A fast static site generator in a single binary with everything built-in.
- Evidence - Web framework for data analysts (open source that turns documents written in SQL and Markdown into reports in the form of a static site)
- Eleventy - Eleventy, a simpler static site generator.
- Nuxt (JavaScript+Vue)
- Zola (Rust)
- Elder (JavaScript+Svelte)
- Lusift - JS library for building product tours
- Astro - Ship as little JavaScript as possible
- fusion.ssg - Minimal framework for static websites
- 11ty
- SkunkHTML - Automatically generate websites on GitHub Pages from Markdown
- Pelican
- Sphinx (documentation generator)
- Redoc
- mkdocs
- Nikola
- Docusaurus
- Zensical
- Gitmal - Static page generator for Git repositories
Media Player
- Clappr - An extensible media player for the web.
- OvenPlayer
- hls.js - HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.
- Video.js
WebRTC
- PeerJS - simplifies WebRTC peer-to-peer data, video, and audio calls.
Video generation
- Remotion - Open-source framework for making videos with React
- Liqvid - Build interactive videos with React
- HyperFrames - Open-source framework built for AI agents that makes videos with HTML
- Animatize - Create animations by dragging objects
Audio
- wavesurfer.js - Open-source interactive audio waveform visualization library
- (Building JavaScript audio effectors) Making your own sound with audio effectors (JavaScript; Effects unit) 5
- AudioMass - Browser-based open-source audio editor with no backend
- Omniclip - Open-source web video editor
Sound/Music
Web automation
- playwright: Node.js library to automate Chromium, Firefox and WebKit with a single API
Virtual environments
Environment variables
Metrics Aggregations (Stats Aggregation)
CMS
Session
- OpenReplay - OpenReplay is an open-source session replay stack that lets you see what users do in your web app, helping you solve problems faster.
Image/Background
- probe-image-size - Get image size without downloading the whole file
- JS IMAGE CARVER (js-image-carver) - Uses the Seam Carving algorithm to find only the unimportant repeating parts (seams) of an image and shrink or extend them.
- pinry - Pinterest-like image preview board.
- CompressImage.io - Tool that compresses JPG / PNG images in the browser (works offline, so it is safe and unlimited)
- Uses Compressor.js.
Avatar
- Boring Avatars - Automatic avatar generation https://boringavatars.com/
- RoboHash - Make profile images from strings https://news.hada.io/topic?id=3787
- BigHeads - Open-source random avatar generator https://news.hada.io/topic?id=2468
- Multiavatar - Multicultural avatar generator https://news.hada.io/topic?id=3276
- Unavatar - Unified loading of user avatar images https://news.hada.io/topic?id=2419
- UI Faces - Collection of avatar images for design mockups https://news.hada.io/topic?id=331
HTTP Status Code
- HTTP Cats - API that shows HTTP status codes as cats
Animation
- @vueuse/motion - Vue Composables putting your components in motion
- keen-slider.js - Stylish slider library - https://keen-slider.io/
- Vanta.js - Animated website backgrounds in a few lines of code.
- Animatize - Create animations by dragging objects
- Velocity.js
- barba.js - Library that adds flexible, smooth transitions between website pages
- AutoAnimate - Add motion to your web app with a single line of code
- Animista - https://animista.net/ - On-Demand CSS Animations Library - Pick an animation on the site and it generates the code. (recommended)
- Animation Library - Good but plain... ordinary... not much character.
- Magic CSS - This one is also good but plain...
- Animate.css - https://animate.style/ - Recommended because there are many kinds. Things like fadeInLeft are nice.
- CSS Gradient Animator
- AnimeJs - Fast, versatile JavaScript library that can animate anything on the web
path animation
ETC (needs checking)
- AnimXYZ - https://animxyz.com/
-
lightGallery- Has animations, but its main purpose is an image gallery. - Loading.io
- Skeleton Elements
- Micron
- AOS
- Vivify - https://github.com/Martz90/vivify
- Motus - https://github.com/alexcambose/motus
Tooltip/Popup
- Floating UI - Tooltip/popup/dropdown positioning library
WebAssembly
- WebContainers
- Javy - JS to WebAssembly toolchain
Window Manager
- [Recommended] WinBox.js - Window manager for the web
- [Recommended] rc-dock - Dock Layout for React Component
- [Recommended] dock-spawn-ts
- [Recommended] Golden Layout
- wcDocker
- jsPanel
-
http://www.htmldockfloat.com - PhosphorJS
- vue-lumino
File Manager
Features comparable to a browser
- Media Manager - https://github.com/iutbay/mm
- Vuetify File Browser - https://github.com/semeniuk/vuetify-file-browser
- File Browser
- filepond - flexible and fun JavaScript file upload library.
- KodExplorer
- Uppy - Javascript library for file uploads on the web
Filesystem
Features focused on "data"
- readdirp - Node.js reader for efficiently reading large directories
- binary-parser - JavaScript parser builder for high-performance parsing of binary data
IO
- txt-reader - FileReader that can read large (GB+) files
QR code
Random
- Rando.js - Random values with stylish design and effects - https://github.com/nastyox/Rando.js
Debugging/Logging
- WebHint - Tool for improving websites
- Web Vitals - Unified guidance on quality signals considered essential to delivering a great user experience
- ScreenLog.js - Library that displays the developer console output on the screen
Syntaxhighlight
- Shiki - A beautiful Syntax Highlighter
- Chalk.ist - Make pretty source code images
- Prism.js - A lightweight, extensible syntax highlighter built with modern web standards in mind.
Other Markup
Latex
- CortexJS MathLive - Web component for entering math formulas
Markdown
...
Terminal
GIS/Map
- Mapkick.js - Create beautiful, interactive maps with one line of JS
- Mapbox-GL-js is no longer under the 3-clause BSD license
- MapLibre GL - Open-source fork of MapboxGL JS
Deep learning
- Handsfree.js - Easy face/hand/pose recognition on the web
- tesseract.js
- tensorflow.js
Compress/Zip/Unzip
- JSZip - JS library for creating/reading/editing Zip files
Datetime
-
Moment.js - Time format (Parse, validate, manipulate, and display dates and times in JavaScript)- Deprecated
Date picker
- Duet Date Picker
- flatpickr - JavaScript library that makes date display look nice. - https://flatpickr.js.org/
Drag and drop
- dragula - Drag and drop so simple it hurts - Recommended for drag & drop. Well implemented.
- dnd-kit - The modern toolkit for building drag and drop interfaces
VCS/Git
- husky - git hook
- lint-staged - git hook for eslint
Lint/Type Checker
private registry
Lightweight
- UnsuckJS
- preact
- Bau
- lit
- spræ
- VanJS
- TwinSpark
- dom-proxy
- roxy
- Tram-Lite
- ite
- reken
- htmx
- strawberry
- Alpine.js
- Mithril
- Crank.js
- diffHTML
- hyperapp
- dlite
- data-template
- ponys
- bdc-js
- RE:DOM
- petite-vue
- CalDOM
- lighterhtml
- Litedom
Performance - Block DOM
Reactive
Utilities
- Lodash - Utility for easily handling essential data structures such as Array, Collection, and Object.
- rambda - A lodash-like utility library that pre-implements functions commonly used in functional programming.
- htmlq - Like jq, but for HTML.
- vkBeautify.js
- npm-run-all - Run multiple scripts sequentially/in parallel
- del-cli - Delete files/directories
- delete-empty - Delete empty directories
Format and Schema validation
- Zod - TypeScript-first schema validation with static type inference
- Cleave - Lets you easily define the format of numbers typed into form input elements. Supported formats: credit card, phone number, date/time, numeral (amount), and delimiter/prefix/block patterns. Supports React and AngularJS. - https://nosir.github.io/cleave.js/
Form & Input & Select
- typeahead.js - Autocomplete Javascript library made by Twitter. - https://github.com/twitter/typeahead.js
- autoComplete.js - Autocomplete Javascript library. - https://github.com/TarekRaafat/autoComplete.js
- Select2 - Javascript library that makes select boxes flexible. - https://github.com/select2/select2
- chosen - Javascript library that makes select boxes flexible. - https://github.com/harvesthq/chosen
Clipboard
- clipboard.js - Javascript library that supports copying to the clipboard on the web. - https://github.com/zenorocha/clipboard.js/
Product tours, highlights, contextual help
- Driver.js - Library for showing product tours, highlights, and contextual help (moves a spotlight (highlight) onto specific on-screen elements step by step - the effect of showing the click order as highlights on a deployed site -)
- highlight.js - Emphasizes specific text on the screen. Works on top of HTML5 canvas.
2025 JavaScript Rising Stars
Ranking of the JavaScript projects that gained the most GitHub stars during 2025
All projects category:
Other categories (check the rest on the site yourself):
- Front-end Frameworks
- React Ecosystem
- Vue Ecosystem
- Back-end/Full-stack
- Tooling
- AI
- Mobile
- State Management
- Styling / CSS in JS
- Component Libraries
- Testing
- Desktop
- Static Sites
- GraphQL
ETC
- Relay: A JavaScript framework for building data-driven React applications.
- Flux: Application Architecture for Building User Interfaces.
- Immutable.js: Immutable data cannot be changed once created, leading to much simpler application development, no defensive copying, and enabling advanced memoization and change detection techniques with simple logic.
- Babel
- Browserify
- Stylus
- ded/bowser: Library that detects the web browser's version and type.
- Github - hotkey: Trigger an action on an element with a keyboard shortcut.
- Svelte
- Snowpack - Supports streaming imports: installs modules automatically when needed, without installing them in advance
- simple-keyboard- Dependency-free virtual keyboard library (supports Angular, React, Vue, Vanilla JS)
- Flagsmith - Feature Flag service
- falso - Open-source fake data generator
- Email, domain, name, address, company name, credit card info, Ethereum/Bitcoin address ...
- git branch/commit (message, SHA,), folder/file/extension, MAC address ...
- Movies, music, cars, superheroes ...
See also
Favorite site
- [Recommended] Openbase web site - Review, explore, and compare millions of open-source packages.
- Awesome Tiny JS - A collection of tiny JS libraries | GeekNews
References
-
Meetup_TOAST_Cloud_-Introduction_to_the_JavaScript_Framework_1-_Cycle.pdf ↩
-
Meetup_TOAST_Cloud_-Introduction_to_the_JavaScript_Framework_2-_Angular2.pdf ↩
-
Meetup_TOAST_Cloud_-Introduction_to_the_JavaScript_Framework_3-_Vue.pdf ↩
-
Meetup_TOAST_Cloud_-Introduction_to_the_JavaScript_Framework_4-_React.pdf ↩
-
Javascript-audio-effectors-practice_-_Evans_Library.pdf ↩