Top 50 Awesome List

sindresorhus/awesome-nodejs

Platforms  2 months ago  47k
Delightful Node.js packages and resources
View byDAY/WEEK/README
View on Github

Jul 24th

Packages

Miscellaneous

  • wild-wild-pathstars507 - Object property paths with wildcards and regexes.
  • Apr 24th

    Resources

    Tools

  • RunKit - Embed a Node.js environment on any website.
  • Apr 11th

    Packages

    Job queues

  • bullmqstars2.8k - Persistent job and message queue.
  • Packages

    Command-line utilities

  • zxstars34.3k - Write shell scripts JavaScript.
  • Mar 2nd

    Packages

    Mad science

  • webtorrentstars26.9k - Streaming torrent client for Node.js and the browser.
  • PDFKitstars8.3k - PDF generation library.
  • xlsxstars31.4k - Pure JS Excel spreadsheet reader and writer.
  • Packages

    Command-line apps

  • http-serverstars12.1k - Simple, zero-config command-line HTTP server.
  • penstars325 - Live Markdown preview in the browser from your favorite editor.
  • trymodulestars1.1k - Try out npm packages in the terminal.
  • themerstars4.9k - Generate themes for your editor, terminal, wallpaper, Slack, and more.
  • taskbookstars8.6k - Tasks, boards & notes for the command-line habitat.
  • Packages

    Functional programming

  • immutablestars32.3k - Immutable data collections.
  • Packages

    HTTP

  • node-fetchstars7.9k - window.fetch for Node.js.
  • axiosstars96k - Promise based HTTP client (works in the browser too).
  • Packages

    Debugging / Profiling

  • debugstars10.4k - Tiny debugging utility.
  • Packages

    Logging

  • consolastars3.9k - Console logger.
  • Packages

    Command-line utilities

  • progressstars2.8k - Flexible ascii progress bar.
  • Packages

    Build tools

  • pkgstars22k - Package your Node.js project into an executable.
  • Packages

    Hardware

  • serialportstars5.3k - Access serial ports for reading and writing.
  • usbstars1.3k - USB library.
  • Packages

    Templating

  • handlebars.jsstars16.8k - Superset of Mustache templates which adds powerful features like helpers and more advanced blocks.
  • Packages

    Web frameworks

  • Next.jsstars93.2k - Minimalistic framework for server-rendered universal JavaScript web apps.
  • Microstars10.2k - Minimalistic microservice framework with an async approach.
  • LoopBackstars4.3k - Powerful framework for creating REST APIs and easily connecting to backend data sources.
  • TypeGraphQLstars7.4k - Modern framework for creating GraphQL APIs with TypeScript, using classes and decorators.
  • Tinyhttpstars2.3k - Modern and fast Express-like web framework.
  • Ts.EDstars2.3k - Intituive TypeScript framework for building server-side apps on top of Express.js or Koa.js.
  • Packages

    Documentation

  • JSDocstars13.2k - API documentation generator similar to JavaDoc or PHPDoc.
  • Packages

    Filesystem

  • proper-lockfilestars188 - Inter-process and inter-machine lockfile utility.
  • Packages

    Real-time

  • µWebSocketsstars14.2k - Highly scalable WebSocket server & client library.
  • Aedesstars1.5k - Barebone MQTT server that can run on any stream server.
  • Packages

    URL

  • humanize-urlstars235 - Humanize a URL: https://sindresorhus.com → sindresorhus.com.
  • Packages

    Data validation

  • joistars19.2k - Object schema description language and validator for JavaScript objects.
  • schema-inspectorstars493 - JSON API sanitization and validation.
  • ajvstars11.7k - The fastest JSON Schema validator. Supports v5, v6 and v7 proposals.
  • Packages

    Parsing

  • remarkstars5.6k - Markdown processor powered by plugins.
  • x-raystars5.6k - Web scraping utility.
  • nearleystars3.3k - Simple, fast, powerful parsing for JavaScript.
  • google-libphonenumberstars1.2k - Parse, format, store and validate phone numbers.
  • Packages

    Humanize

  • msstars4.2k - Tiny millisecond conversion utility.
  • Packages

    Testing

  • nycstars5.1k - Code coverage tool built on istanbul that works with subprocesses.
  • tapstars2.1k - TAP test framework.
  • trevorstars2.1k - Run tests against multiple versions of Node.js without switching versions manually or pushing to Travis CI.
  • Nockstars11.7k - HTTP mocking and expectations.
  • CodeceptJSstars3.8k - End-to-end testing.
  • Puppeteerstars80.1k - Headless Chrome.
  • Packages

    Minifiers

  • UglifyJS2stars12.3k - JavaScript minifier.
  • clean-cssstars4k - CSS minifier.
  • Packages

    Email

  • Nodemailerstars15k - The fastest way to handle email.
  • email-templatesstars3.4k - Create, preview, and send custom email templates.
  • Packages

    Job queues

  • agendastars8.5k - MongoDB-backed job scheduling.
  • node-resquestars1.2k - Redis-backed job queue.
  • Packages

    Natural language processing

  • retextstars2.2k - An extensible natural language system.
  • Packages

    AST

  • Acornstars8.8k - Tiny, fast JavaScript parser.
  • Packages

    Static site generators

  • docsifystars21.7k - Markdown documentation site generator with no statically built HTML files.
  • Packages

    Content management systems

  • Factorstars1.3k - Vue.js dashboard framework and headless CMS.
  • AdminBrostars5.6k - Auto-generated admin panel with CRUD for all your resources.
  • Packages

    Serialization

  • protobufstars8.5k - Implementation of Protocol Buffers.
  • Packages

    Miscellaneous

  • jsdomstars17.9k - JavaScript implementation of HTML and the DOM.
  • Resources

    Tutorials

  • Node.js Best Practicesstars81.8k - Summary and curation of the top-ranked content on Node.js best practices, available in multiple languages.
  • The Node Way - An entire philosophy of Node.js best practices and guiding principles exists for writing maintainable modules, scalable applications, and code that is actually pleasant to read.
  • Portable Node.js guidestars1.3k - Practical guide on how to write portable/cross-platform Node.js code.
  • Resources

    Newsletters

  • Node Weekly - Weekly e-mail round-up of Node.js news and articles.
  • Resources

    Books

  • Node.js in Practice
  • Mastering Node
  • Node.js 8 the Right Way
  • Professional Node.js: Building JavaScript Based Scalable Software
  • Secure Your Node.js Web Application
  • Resources

    Blogs

  • webapplog.com - Blog posts on Node.js and JavaScript from the author of Practical Node.js and Pro Express.js Azat Mardan.
  • Resources

    Courses

  • Real Time Web with Node.js
  • Learn and Understand Node.js
  • Resources

    Cheatsheets

  • Express.js
  • Resources

    Tools

  • npm-hub - Chrome extension to display npm dependencies at the bottom of a repo's readme.
  • Resources

    Community

  • Stack Overflow
  • Discord
  • Resources

    Miscellaneous

  • nodebots - Robots powered by JavaScript.
  • Module Requests & Ideasstars538 - Request a JavaScript module you wish existed or get ideas for modules.
  • Jan 23rd

    Packages

    HTTP

  • undicistars4.2k - High performance HTTP client written from scratch with zero dependencies.
  • ky-universalstars556 - Universal HTTP client based on Fetch.
  • pureststars512 - REST client.
  • Packages

    Web frameworks

  • Fastifystars25k - Fast and low overhead web framework.
  • Nuxt.jsstars41.4k - Minimalistic framework for server-rendered Vue.js apps.
  • AdonisJsstars13k - A true MVC framework for Node.js built on solid foundations of Dependency Injection and IoC container.
  • Moleculerstars5.3k - Fast & powerful microservices framework.
  • Packages

    Streams

  • from2stars129 - Convenience wrapper for ReadableStream, inspired by through2.
  • Packages

    Parsing

  • @parcel/cssstars2.7k - A CSS parser, transformer, and minifier written in Rust.
  • Packages

    Minifiers

  • babel-minifystars4.3k - ES2015+ aware minifier based on the Babel toolchain.
  • Packages

    Debugging / Profiling

  • datsstars70 - Minimalistic and zero-dependencies StatsDstars16.7k client.
  • Oct 1st, 2021

    Packages

    Web frameworks

  • Ladstars2.2k - Framework made by a former Express TC and Koa member that bundles web, API, job, and proxy servers.
  • Sep 26th, 2021

    Packages

    Image

  • ImageScriptstars445 - Image processing in JavaScript, utilizing WebAssembly for performance.
  • Jun 1st, 2021

    May 18th, 2021

    Resources

    Videos

  • Google I/O 2009 - V8: High Performance JavaScript Engine - The basics of V8 architecture and how it optimizes JavaScript execution.
  • Google I/O 2012 - Breaking the JavaScript Speed Limit with V8 - How V8 optimizes JavaScript execution.
  • Google I/O 2013 - Accelerating Oz with V8: Follow the Yellow Brick Road to JavaScript Performance - How to detect app bottlenecks and optimize performance with V8 knowledge.
  • Node.js Internal Architecture | Ignition, Turbofan, Libuv - How Node.js works internally, with a focus on V8 and libuv.
  • Introduction to libuv: What's a Unicorn Velociraptor? - libuv architecture, thread pool, and event loop, with its source code.
  • libuv Cross platform asynchronous i/o - libuv architecture in detail, such as where it's actually using threads.
  • You Don't Know Node - ForwardJS San Francisco - Explaining Node.js internals with quizzes about V8, libuv, event loop, module, stream, and cluster.
  • May 17th, 2021

    Resources

    Miscellaneous

  • v8-perfstars2k - Notes and resources related to V8 and thus Node.js performance.
  • Apr 22nd, 2021

    Packages

    Parsing

  • Chevrotainstars2k - Very fast and feature rich parser building toolkit for JavaScript.
  • Mar 6th, 2021

    Resources

    Videos

  • Make a vanilla Node.js REST API - Building a REST API without using a framework like Express.
  • Official

  • Website
  • Documentation
  • Repositorystars90.6k
  • Jan 22nd, 2021

    Packages

    Node.js management

  • fnmstars8.8k - Cross-platform Node.js version manager built in Rust.
  • Dec 12th, 2020

    Packages

    HTTP

  • smokestars157 - File-based HTTP mock server with recording abilities.
  • Packages

    Testing

  • testcontainers-nodestars863 - Provides lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
  • Packages

    Automation

  • nut.jsstars1k - Cross-platform native GUI automation / testing framework with image matching capabilities which integrates with Jest.
  • Dec 10th, 2020

    Packages

    Web frameworks

  • Marble.jsstars2k - Functional reactive framework for building server-side apps, based on TypeScript and RxJS.
  • Nov 24th, 2020

    Packages

    Data validation

  • Superstructstars6.1k - Simple and composable way to validate data in JavaScript (and TypeScript).
  • Nov 11th, 2020

    Packages

    Miscellaneous

  • editlystars3.6k - Declarative video editing API.
  • Sep 5th, 2020

    Packages

    Authentication

  • Grantstars3.7k - OAuth providers for Express, Koa, Hapi, Fastify, AWS Lambda, Azure, Google Cloud, Vercel, and many more.
  • Jul 7th, 2020

    Packages

    Mad science

  • Pipcookstars2.3k - Front-end algorithm framework to create a machine learning pipeline.
  • Jul 6th, 2020

    Packages

    Testing

  • axe-corestars4.8k - Accessibility engine for automated Web UI testing.
  • Jul 5th, 2020

    Packages

    Text

  • StegCloakstars2.7k - Conceal secrets within strings, in plain sight.
  • Apr 24th, 2020

    Resources

    Videos

  • Mastering REST APIs in Node.js: Zero-To-Hero - Video course on how to make REST APIs using Node.js.
  • Apr 14th, 2020

    Packages

    Miscellaneous

  • patch-packagestars7.6k - Make and preserve fixes to npm dependencies.
  • Apr 13th, 2020

    Packages

    Documentation

  • Docusaurusstars38.4k - Documentation website generator that leverages React and Markdown, and comes with translation and versioning features.
  • Apr 9th, 2020

    Packages

    Miscellaneous

  • huskystars27.8k - Create Git hook scripts.
  • Feb 22nd, 2020

    Packages

    Debugging / Profiling

  • NiMstars182 - Manages DevTools debugging workflow.
  • Packages

    Testing

  • Playwrightstars42.8k - Headless Chromium, WebKit, and Firefox with a single API.
  • Resources

    Tools

  • CodeSandbox - Online IDE and prototyping.
  • Packages

    Miscellaneous

  • genepistars61 - Automatically generate a native Node.js addon from C++ code.
  • basic-ftpstars544 – FTP/FTPS client.
  • cashifystars382 - Currency conversion.
  • Dec 31st, 2019

    Packages

    HTTP

  • global-agentstars245 - Global HTTP/HTTPS proxy agent that is configurable using environment variables.
  • Packages

    Security

  • jose-simplestars52 - Encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
  • Dec 12th, 2019

    Packages

    Testing

  • nvestars588 - Run any command on multiple versions of Node.js locally.
  • Nov 1st, 2019

    Resources

    Videos

  • 10 Things I Regret About Node.js by Ryan Dahl - Insightful talk by the creator of Node.js about some of its limitions.
  • Oct 8th, 2019

    Packages

    Command-line apps

  • npkillstars6.2k - Easily find and remove old and heavy node_modules folders.
  • Sep 26th, 2019

    Resources

    Miscellaneous

  • modern-nodestars236 - Toolkit for creating node modules with Jest, Prettier, ESLint, and Standard.
  • Packages

    Debugging / Profiling

  • swagger-statsstars752 - Trace API calls and monitor API performance, health, and usage metrics.
  • Packages

    Text

  • nanoidstars18.8k - Tiny, secure, URL-friendly, unique string ID generator.
  • Sep 23rd, 2019

    Resources

    Tutorials

  • Build a real web app with no frameworks - A set of video tutorials/livestreams to help you build and deploy a real, live web app using a handful of simple libraries and the core Node.js modules.
  • Packages

    Static site generators

  • Chargestars403 - Opinionated, zero-config static site generator using JSX and MDX.
  • Sep 22nd, 2019

    Packages

    Email

  • MJMLstars14.4k - Markup language designed to reduce the pain of creating responsive emails.
  • Jul 3rd, 2019

    Packages

    Debugging / Profiling

  • thetoolstars197 - Capture different CPU, memory, and other profiles for your app in Chrome DevTools friendly format.
  • Jun 29th, 2019

    Packages

    Job queues

  • better-queuestars389 - Simple and efficient job queue when you cannot use Redis.
  • Packages

    Image

  • qrcodestars6k - QR code and bar code generator.
  • Packages

    Node.js management

  • nodenvstars1.8k - Version manager that is similar to Ruby's rbenv. It supports auto version switching.
  • Jun 19th, 2019

    May 30th, 2019

    Packages

    Job queues

  • sqs-consumerstars1.3k - Build Amazon Simple Queue Service (SQS) based apps without the boilerplate.
  • May 13th, 2019

    Packages

    Security

  • crypto-hashstars589 - Async non-blocking hashing.
  • Packages

    Filesystem

  • tempystars362 - Get a random temporary file or directory path.
  • Packages

    Miscellaneous

  • openstars2.7k - Opens stuff like websites, files, executables.
  • Apr 29th, 2019

    Packages

    Natural language processing

  • nlp.jsstars5.1k - Building bots, with entity extraction, sentiment analysis, automatic language identify, and more.
  • Packages

    Command-line apps

  • npm-namestars156 - Check a package name's availability on npm.
  • Resources

    Books

  • Get Programming with Node.js
  • Packages

    Job queues

  • RedisSMQstars453 - Simple high-performance Redis message queue with real-time monitoring.
  • Packages

    Date

  • Day.jsstars40.5k - Immutable date library alternative to Moment.js.
  • Apr 28th, 2019

    Packages

    Miscellaneous

  • node-video-libstars306 - Pure JavaScript library for working with MP4 and FLV video files and creating MPEG-TS chunks for HLS streaming.
  • Resources

    Cheatsheets

  • Strong Node.jsstars468 - Checklist for source code security analysis of a Node.js web service.
  • Resources

    Videos

  • V8 Garbage Collector - Trash talk about the V8 garbage collector.
  • Packages

    Security

  • rate-limiter-flexiblestars2.3k - Brute-force and DDoS attack protection.
  • Packages

    Mad science

  • stackgl - Open software ecosystem for WebGL, built on top of browserify and npm.
  • Packages

    Command-line apps

  • ESLintstars21.4k - The pluggable linting utility for JavaScript.
  • Packages

    Functional programming

  • lodashstars54.5k - Utility library delivering consistency, customization, performance, & extras. A better and faster Underscore.js.
  • RxJSstars27.8k - Functional reactive library for transforming, composing, and querying various kinds of data.
  • Packages

    Build tools

  • gulpstars32.6k - Streaming and fast build system that favors code over config.
  • Packages

    Web frameworks

  • Hapistars14k - Framework for building applications and services.
  • Koastars33.2k - Framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and APIs.
  • Expressstars58.5k - Web application framework, providing a robust set of features for building single and multi-page, and hybrid web applications.
  • Feathersstars14.1k - Microservice framework built in the spirit of Express.
  • Meteorstars43k - An ultra-simple, database-everywhere, data-on-the-wire, pure-Javascript web framework. (You might like awesome-meteorstars1.4k)
  • Restifystars10.5k - Enables you to build correct REST web services.
  • Packages

    Documentation

  • Doccostars3.5k - Documentation generator which produces an HTML document that displays your comments intermingled with your code.
  • Packages

    Testing

  • AVAstars20k - Futuristic test runner.
  • Mochastars21.7k - Feature-rich test framework making asynchronous testing simple and fun.
  • Resources

    Tutorials

  • Nodeschool - Learn Node.js with interactive lessons.
  • Apr 19th, 2019

    Resources

    Tools

  • npm semver calculator - Visually explore what versions of a package a semver range matches.
  • Feb 16th, 2019

    Packages

    Mad science

  • YodaOSstars1.2k - AI operating system.
  • Dec 29th, 2018

    Packages

    Security

  • GuardRails - GitHub app that provides security feedback in pull requests.
  • Dec 9th, 2018

    Resources

    Videos

  • Hands on with Node.js
  • Nov 8th, 2018

    Packages

    Filesystem

  • move-filestars182 - Move a file, even works across devices.
  • Oct 13th, 2018

    Packages

    Real-time

  • rpc-websocketsstars466 - JSON-RPC 2.0 implementation over WebSockets.
  • Packages

    Security

  • themisstars1.6k - Multilanguage framework for making typical encryption schemes easy to use: data at rest, authenticated data exchange, transport protection, authentication, and so on.
  • Packages

    Authorization

  • node-casbinstars2k - Authorization library that supports access control models like ACL, RBAC and ABAC.
  • Packages

    Debugging / Profiling

  • llnodestars1k - Post-mortem analysis tool which allows you to inspect objects and get insights from a crashed Node.js process.
  • Packages

    Command-line apps

  • dischargestars503 - Easily deploy static websites to Amazon S3.
  • cash-clistars187 - Convert between 170 currencies.
  • Packages

    Command-line utilities

  • Cliffystars308 - Framework for interactive CLIs.
  • Aug 10th, 2018

    Packages

    Command-line utilities

  • sparklystars393 - Generate sparklines ▁▂▃▅▂▇.
  • Packages

    Weird

  • cat-ascii-facesstars237 - ₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ”.
  • Aug 2nd, 2018

    Packages

    Command-line apps

  • carbon-now-clistars5.4k - Beautiful images of your code — from right inside your terminal.
  • Jun 26th, 2018

    Packages

    AST

  • babel-parser - JavaScript parser used in Babel.
  • Jun 25th, 2018

    Packages

    Mad science

  • Brain.jsstars13.3k - Machine-learning framework.
  • Jun 21st, 2018

    Packages

    Command-line utilities

  • cli-table3stars404 - Pretty unicode tables.
  • Jun 19th, 2018

    Packages

    Content management systems

  • KeystoneJSstars7k - CMS and web application platform built on Express and MongoDB.
  • May 15th, 2018

    Packages

    Mad science

  • BitcoinJSstars4.7k - Clean, readable, proven Bitcoin library.
  • Bitcorestars4.4k - Pure and powerful Bitcoin library.
  • NodeOSstars6.7k - The first operating system powered by npm.
  • Cytoscape.jsstars8.7k - Graph theory (a.k.a. network) modeling and analysis.
  • isomorphic-gitstars6.5k - Pure JavaScript implementation of Git.
  • Packages

    Command-line apps

  • gh-homestars181 - Open the GitHub page of the repo in the current directory.
  • npm-homestars178 - Open the npm page of a package.
  • trashstars2.4k - Safer alternative to rm.
  • Packages

    Functional programming

  • Ramdastars22.4k - Utility library with a focus on flexible functional composition enabled by automatic currying and reversed argument order. Avoids mutating data.
  • Moutstars1.3k - Utility library with the biggest difference between other existing solutions is that you can choose to load only the modules/functions that you need, no extra overhead.
  • Packages

    Command-line utilities

  • yargsstars10k - Command-line parser that automatically generates an elegant user-interface.
  • get-stdinstars315 - Easier stdin.
  • Inkstars19.2k - React for interactive command-line apps.
  • terminal-linkstars522 - Create clickable links in the terminal.
  • terminal-imagestars891 - Display images in the terminal.
  • Inquirer.jsstars16.9k - Interactive command-line prompt.
  • sudo-blockstars91 - Block users from running your app with root permissions.
  • term-sizestars130 - Reliably get the terminal window size.
  • Packages

    Build tools

  • parcelstars41.4k - Blazing fast, zero config web app bundler.
  • Packages

    Web frameworks

  • ThinkJSstars5.3k - Framework with ES2015+ support, WebSockets, REST API.
  • ActionHerostars2.3k - Framework for making reusable & scalable APIs for TCP sockets, WebSockets, and HTTP clients.
  • Packages

    Documentation

  • documentation.jsstars5.6k - API documentation generator with support for ES2015+ and flow annotation.
  • Packages

    Real-time

  • Socket.iostars56.7k - Enables real-time bidirectional event-based communication.
  • Fayestars4.4k - Real-time client-server message bus, based on Bayeux protocol.
  • deepstream.iostars289 - Scalable real-time microservice framework.
  • Packages

    Date

  • Luxonstars13.1k - Library for working with dates and times.
  • Packages

    Parsing

  • Jisonstars4.2k - Friendly JavaScript parser generator. It shares genes with Bison, Yacc and family.
  • Packages

    Testing

  • WebdriverIOstars7.7k - Automated testing based on the WebDriver protocol.
  • Packages

    Benchmarking

  • Benchmark.jsstars5.2k - Benchmarking library that supports high-resolution timers and returns statistically significant results.
  • Packages

    Authentication

  • Passportstars20.7k - Simple, unobtrusive authentication.
  • Packages

    Process management

  • Phusion Passengerstars4.9k - Friendly process manager that integrates directly into Nginx.
  • Packages

    Content management systems

  • ApostropheCMSstars3.9k - Content management system with an emphasis on intuitive front end content editing and administration built on Express and MongoDB.
  • Strapistars48.3k - Content Management Framework (headless-CMS) to build powerful APIs.
  • Packages

    Forum

  • nodeBBstars13k - Forum platform for the modern web.
  • Packages

    Blogging

  • Ghoststars41.1k - Simple, powerful publishing platform.
  • Hexostars35.5k - Fast, simple and powerful blogging framework.
  • Packages

    Miscellaneous

  • owstars3.6k - Function argument validation for humans.
  • semverstars4.4k - Semantic version parser.
  • @sindresorhus/isstars1.4k - Type check values.
  • emittery