A curated collection of awesome JavaScript libraries, tools, runtimes, resources, and shiny things — across browser, Node.js, Deno, Bun, edge/serverless, desktop, and mobile.
Scope: anything primarily built for JavaScript/TypeScript ecosystems (not just browser-side).
- Awesome JS
- Worth Reading
- Other Awesome Lists
- Contributing
- License
Where JavaScript runs.
- Node.js - Server-side JavaScript runtime.
- Deno - Secure runtime with modern tooling built-in.
- Bun - Fast runtime + bundler + package manager.
- Cloudflare Workers - Edge/serverless JavaScript runtime.
- Electron - Build cross-platform desktop apps with JavaScript.
- React Native - Build native mobile apps with JavaScript/TypeScript.
Host libraries and provide tools for fetching and packaging them.
- npm - Package manager for JavaScript.
- yarn - Fast, reliable dependency management.
- pnpm - Fast, disk space efficient package manager.
- bun - Runtime + package manager.
- jspm - Package management & import maps tooling.
Legacy / historical
Manage multiple packages/apps in one repo.
- Nx - Smart, fast monorepos for JS/TS.
- Turborepo - High-performance build system for monorepos.
- Lerna - Monorepo tooling (often combined with npm/yarn/pnpm workspaces).
- Changesets - Versioning + changelogs for monorepos.
- Bit - Create, find, and reuse components across apps.
How code is loaded (ESM/CJS + loaders).
- ES Modules - Standard module system for modern JS.
- SystemJS - Dynamic module loader for browsers and Node.
- RequireJS - AMD module loader.
- browserify - Bundle Node-style
require()for browsers.
Convert modern JS/TS syntax into target environments.
Bundle modules and assets.
- Vite - Modern dev server + bundler.
- webpack - Mature bundler for complex apps.
- Rollup - Great for libraries (ESM-first).
- Parcel - Zero-config bundler.
- esbuild - Extremely fast bundler/transpiler.
- Microbundle - Zero-config bundler for tiny modules.
- FuseBox - A bundler that does it right.
- Snowpack - Modern dev/build tool (historically popular).
- bundlephobia - Quick npm package size checker.
Minify JS for production.
- TypeScript - Typed superset of JavaScript.
- Flow - Static type checker for JavaScript.
- Zod - TypeScript-first schema validation.
- Yup - Schema builder and validator.
- io-ts - Runtime types + decoding.
- Ajv - Fast JSON Schema validator.
- Vitest - Fast unit test framework powered by Vite.
- Jest - Painless JavaScript unit testing.
- Mocha - Flexible test framework for Node and browser.
- AVA - Futuristic JavaScript test runner.
- Tape - Tap-producing test harness.
- QUnit - Easy-to-use unit testing framework.
- Chai - BDD/TDD assertion library.
- Sinon - Spies, stubs, and mocks.
- Testing Library - Test UI the way users interact.
- Playwright - Automate Chromium/Firefox/WebKit.
- Puppeteer - Headless Chrome/Chromium automation.
- Cypress - End-to-end testing framework.
- TestCafe - Automated browser testing.
- WebdriverIO - Node.js browser/mobile automation.
- Istanbul / nyc - Coverage reporting.
- c8 - Coverage using V8’s built-in coverage.
Format, lint, and keep code healthy.
- ESLint - Pluggable linting utility.
- Prettier - Opinionated formatter.
- Biome - Fast formatter + linter (JS/TS).
- Standard - JavaScript Standard Style.
- Husky - Git hooks made easy.
- lint-staged - Run linters on staged files.
Write and publish docs, API refs, and guides.
- DevDocs - Fast API documentation browser.
- Docusaurus - Documentation site generator.
- VitePress - Vite-powered docs.
- Docsify - Docs site without a build step.
- Storybook - UI component workshop + docs.
- typedoc - TypeScript API documentation.
- React - UI library.
- Vue - Progressive framework.
- Svelte - Compiler-based UI framework.
- Angular - Full-featured framework (TypeScript).
- Preact - Fast, small React alternative.
- Solid - Fine-grained reactivity.
- Alpine.js - Minimal reactive framework.
- Redux - Predictable state container.
- Zustand - Small, fast state management for React.
- MobX - Simple, scalable state management.
- XState - State machines and statecharts.
- D3 - Visualization library for HTML/SVG/Canvas.
- Chart.js - Simple canvas charts.
- ECharts - Powerful charting.
- Three.js - 3D library.
- Vega - Visualization grammar.
- Cytoscape.js - Graph theory visualizations.
- CodeMirror - Code editor.
- Monaco Editor - VS Code editor core.
- Ace - Browser code editor.
- Quill - Rich text editor.
- TinyMCE - Rich text editor.
- GSAP - High-performance animations.
- anime.js - Animation engine.
- motion - Modern animation library.
- three.js - 3D animations and scenes.
- Leaflet - Interactive maps.
- MapLibre GL JS - Open-source WebGL maps.
- OpenLayers - Feature-packed mapping library.
- Cesium - 3D globes and maps.
- Express - Minimal Node.js web framework.
- Fastify - Fast, schema-based framework.
- NestJS - Opinionated framework (TypeScript-first).
- Koa - Lightweight middleware framework.
- Hono - Small, fast framework for edge runtimes (also Node).
- SvelteKit - Full-stack Svelte framework.
- Next.js - Full-stack React framework.
- axios - HTTP client for Node and browser.
- ky - Tiny Fetch-based HTTP client.
- SWR - React Hooks data fetching.
- TanStack Query - Async state + caching.
- Passport - Authentication middleware for Node.
- Lucia - Auth library (TypeScript-friendly).
- NextAuth.js - Authentication for Next.js and beyond.
- Prisma - Type-safe ORM.
- Drizzle ORM - SQL-first TypeScript ORM.
- Sequelize - Feature-rich ORM.
- TypeORM - ORM for TS/JS.
- Mongoose - MongoDB object modeling.
- Knex - SQL query builder.
- Kysely - Type-safe SQL query builder.
- BullMQ - Redis-backed queue.
- Agenda - Job scheduling for Node.
- Bree - Job scheduler using worker threads.
- Strapi - Open-source headless CMS.
- Ghost - Publishing platform.
- KeystoneJS - CMS + app framework.
- Papa Parse - CSV parsing.
- jsPDF - PDF generation.
- PDF.js - PDF reader in JavaScript.
- diff2html - Git diff → pretty HTML.
- lodash - Utility library.
- underscore - Utility belt.
- ramda - Practical FP library.
- fxjs - Lazy evaluation + concurrency helpers.
- RxJS - Reactive programming library.
- Most.js - High-performance FRP library.
- Bacon.js - FRP library.
- immutable-js - Persistent data structures.
- js-sdsl - STL-like containers for JS.
- date-fns - Modern date utility library.
- dayjs - Small Moment-like API.
- luxon - Dates and times with Intl.
- ms - Millisecond conversion utility.
- he - HTML entity encoder/decoder.
- query-string - Parse/stringify URL query strings.
- sprintf.js - sprintf implementation.
- Numeral.js - Number formatting.
- chance - Random generator helpers.
- Fraction.js - Rational numbers.
- localForage - Offline storage wrapper.
- Dexie.js - IndexedDB wrapper.
- js-cookie - Cookie API.
- chroma.js - Color manipulations.
- randomColor - Color generator.
- TinyColor - Color manipulation/conversion.
- DOMPurify - XSS sanitizer for HTML/SVG/MathML.
- sanitize-html - HTML sanitizer.
- js-xss - Sanitize untrusted HTML.
- pino - Very fast logger for Node.
- winston - Multi-transport async logging.
- loglevel - Minimal log level wrapper.
- benchmark.js - Benchmarking library.
- matcha - Simple benchmarking runner.
- commander - CLI framework.
- yargs - CLI argument parsing.
- oclif - Opinionated CLI framework.
- zx - Write shell scripts in JavaScript.
- React Native - Native mobile apps with JS/TS.
- Expo - Tooling + platform for React Native apps.
- Ionic - Hybrid app framework.
- TensorFlow.js - Train/deploy ML models in JS.
- Brain.js - Neural networks in JavaScript.
- ml5.js - Friendly ML for the web.
- OpenAI SDK - Official JavaScript/TypeScript library for the OpenAI API.
- LangChain.js - LLM application framework for JS/TS.
- Vercel AI SDK - Build AI features for web apps.
- Clean Code JavaScript - Clean Code ideas adapted for JS.
- javascript-algorithms - Algorithms and data structures in JS.
- Roadmap.sh JavaScript Roadmap - Community learning roadmap.
- You Don’t Know JS Yet - Deep dive series on JS fundamentals and internals.
- Superhero.js - Resources for creating and maintaining large JS codebases.
- braziljs/js-the-right-way - Quick reference for JS best practices.
Contributions welcome! Read the contribution guidelines first.
To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this work.
