- Learn Node - Delightful Node.js packages and resources
- NodeSchool
- Awesome Node.js
- Node Service Template provides a "battery-included" starter template for building enterprise Node.js webservices.
- Practica
- Node.js Best Practices
- How to code in Node.js
- The Nine Node Pillars - 9 Principles for Doing Node.js Right in Enterprise Environments
- Node Security
- How I write backends
- Node.js Reference Architecture
- Shell scripting with Node.js
- Bun.js
- Advanced Node.js Patterns Repository
Auth
- Better Auth is an authentication framework. It provides a comprehensive set of features out of the box and includes a Plugin ecosystem.
- FusionAuth - Auth.Built for Devs, by Devs. Secure, powerful, and flexible auth that developers love.
- Permit makes it easy to add an authentication layer to any Node.js API. It can be used with any of the popular server frameworks.
Books
Awesome Node.js - A curated list of delightful Node.js packages and resources.
-
- Tao of Node - Design, Architecture & Best Practices
Node Green See Node.js version ECMAscript support.
http-server A simple static web server for development
localtunnel - exposes your localhost to the world for easy testing and sharing.
CLI Tools
- Caporal - A full-featured framework for building command line applications (cli) with node.js.
- Commander.js - The complete solution for node.js command-line interfaces.
- Gluegun - A delightful toolkit for building Node-powered CLIs.
- Inquirer - A collection of common interactive command line user interfaces.
- Oclif - The Open CLI Framework.
- Termo is a simple terminal emulator that can be used to create a terminal-like interface on your website.
Data Validation
- Ajv allows implementing complex data validation logic via declarative schemas for your JSON data, without writing code.
- Forg.js is a JavaScript lightweight object validator.
- is.js - Check types, regexps, presence, time and more...
- Joi - Schema description language and data validator for JavaScript.
- JSON Schema enables the confident and reliable use of the JSON data format.
- v8n aims to be the most fluent and simple validation library for use in any context.
- Valid.js - A library for data validation.
- Validator.js - This library validates and sanitizes strings only.
- Vest - Form validation that feels like writing tests.
- Vine.js
- Yup is a schema builder for runtime value parsing and validation.
- Zod
Dates & Times
- Date-fns provides the most comprehensive, yet simple and consistent toolset for manipulating JavaScript dates in a browser & Node.js.
- Day.js is a minimalist JavaScript library that parses, validates, manipulates, and displays dates and times for modern browsers with a largely Moment.js-compatible API.
- Luxon - A powerful, modern, and friendly wrapper for JavaScript dates and times.
- Moment.js - Parse, validate, manipulate, and display dates and times in JavaScript.
- Pretty MS - Convert milliseconds to a human readable string: 1337000000 → 15d 11h 23m 20s.
Express Libs
Frameworks
- Have a look at the Node Frameworks Page
- Adonis - A TypeScript-first web framework for building web apps and API servers.
- DerbyJS is a full-stack framework for writing modern web applications.
- Express - Fast, unopinionated, minimalist web framework for Node.js
- Fastify - Fast and low overhead web framework, for Node.js.
- Feathers - A full-stack web-framework for creating APIs and real-time applications with TypeScript or JavaScript.
- Hapi - The Simple, Secure Framework Developers Trust
- Hexo - A fast, simple & powerful blog framework.
- Hono - Web application framework. Fast, lightweight, built on Web Standards. Support for any JavaScript runtime.
- Htmx - Gives you access to AJAX, CSS Transitions, WebSockets and Server Sent Events directly in HTML.
- Koa - Koa is a new web framework designed by the team behind Express.
- Nest - A progressive Node.js framework for building efficient, reliable and scalable server-side applications.
- Restify - A Node.js web service framework optimized for building semantically correct RESTful web services ready for production use at scale.
- Twirp is similar to gRPC, but without the custom HTTP server and transport implementations: it runs on the standard library's extremely-well-tested-and-high-performance net/http Server. It can run on HTTP 1.1, not just http/2, and supports JSON serialization for easy debugging.
- Wasp - Rails-like framework for React, Node.js and Prisma.
Graphics
- GraphicsMagick - Image manipulation library in Node.js
- Jimp - An image processing library for Node written entirely in JavaScript, with zero native dependencies.
- Sharp - The typical use case for this high speed Node-API module is to convert large images in common formats to smaller, web-friendly JPEG, PNG, WebP, GIF and AVIF images of varying dimensions.
Hosting
- Nodeshift - Node.js on Kubernetes and Openshift
- Render.com - Intuitive infrastructure to scale any app or agent from your first user to your billionth.
HTTP
- Axios - Promise based HTTP client for the browser and node.js
- Ky - Ky targets modern browsers, Node.js, and Deno. It's just a tiny file with no dependencies.
- Undici - An HTTP/1.1 client, written from scratch for Node.js.
Logging
- Bragi is javascript logging library with colors, custom log levels, and server reporting functionality.
- Bunyan is a simple and fast JSON logging library for node.js services
- Consola - Elegant Console Logger for Node.js and Browser.
- Datadog - Modern monitoring & security. See inside any stack, any app, at any scale, anywhere.
- Dumper.js - A better and pretty variable inspector for your Node.js applications.
- Errsole is an open-source logger for Node.js apps. It comes with a built-in log viewer to view, filter, and search your app logs.
- Graylog - Threat Detection & Incident Response Done Right.
- LogRocket identifies exactly where your customers are struggling the most.
- LogTape Simple logging library with zero dependencies for every JavaScript runtime.
- Loggly - See it all in one place. Dozens of log sources, no proprietary agents.
- Morgan - HTTP request logger middleware for node.js.
- Papertrail - Frustration-free log management.
- Pino - Very low overhead Node.js logger.
- Raygun - Auto-prompt your chosen LLM with crucial error context from your stack trace, environment, and affected code to get fast and accurate solutions.
- Roarr - JSON logger for Node.js and browser.
- Rollbar - Discover, predict, and resolve errors in real-time.
- Signale - Hackable and configurable to the core, signale can be used for logging purposes, status reporting...
- TSLog - Beautiful logging experience for Node.js with TypeScript support.
- Winston is designed to be a simple and universal logging library with support for multiple transports.
Low-Code and No-Code
- JointJS - Build advanced visual and no-code/low-code applications quickly and confidently with a proven library.
- Node-RED - Low-code programming for event-driven applications.
Markdown
- Marked - A low-level markdown compiler for parsing markdown without caching or blocking for long periods of time.
- Micromark - The smallest CommonMark compliant markdown parser. With positional info and concrete tokens.
- Remarkable - Markdown parser done right. Fast and easy to extend.
- Turndown - Convert HTML into Markdown with JavaScript.
Misc libraries
- Accounting.js is a tiny JavaScript library by Open Exchange Rates, providing simple and advanced number, money and currency formatting.
- Auth.js - Authentication for the Web. Free and open source.
- AutoNumeric.js is a standalone Javascript library that provides live as-you-type formatting for international numbers and currencies.
- bcrypt.js - Optimized bcrypt in JavaScript with zero dependencies.
- Bignumber.js - A JavaScript library for arbitrary-precision decimal and non-decimal arithmetic.
- Bumblebee - JavaScript Voice Application Framework.
- Cron is a robust tool for running jobs (functions or commands) on schedules defined using the cron syntax.
- Croner - Cron jobs in JavaScript and TypeScript.
- csurf
- DotEnv is a zero-dependency module that loads environment variables from a .env file into process.env.
- Fast-CSV - CSV Parser and Formatter.
- fdir - The Fastest Directory Crawler & Globber for NodeJS
- Highlight.js - The Internet's favorite JavaScript syntax highlighter supporting Node.js and the web.
- Hyperid - Uber-fast unique id generation, for Node.js and the browser.
- Hyperlink - Detect invalid and inefficient links on your webpages. Works with local files or websites, on the command line and as a node library.
- jq
- Marky - JavaScript timer based on performance.mark() and performance.measure().
- Math.js - An extensive math library for JavaScript and Node.js.
- Micro Diff is a tiny (currently <1kb), fast, zero dependency object and array comparison library.
- Microlight.js is a tiny open-source library which improves readability of code snippets by highlighting, for any programming language.
- node-convict Schema-based configuration management
- NodeCSV - This project provides CSV generation, parsing, transformation and serialization for Node.js.
- Nodegit - Native Node bindings to Git.
- NodeGui - Build performant, native and cross-platform desktop applications with Node.js and CSS like styling.
- PDFKit - A JavaScript PDF generation library for Node and the browser.
- PDFMake - PDF document generation library for server-side and client-side in pure JavaScript.
- QuaggaJS - A barcode-scanner entirely written in JavaScript supporting real- time localization and decoding of various types of barcodes.
- Rsmq - Redis Simple Message Queue. A lightweight message queue for Node.js that requires no dedicated queue server.- Sarus - A JavaScript library for WebSockets.
- Simple Git - A lightweight interface for running git commands in any node.js application.
- Socket.io - Bidirectional and low-latency communication for every platform.
- Sockette is a tiny (367 bytes) wrapper around WebSocket that will automatically reconnect if the connection is lost!
- SSE Channel - SSE-implementation which can be used to any node.js http request/response stream.
- Strman - A Javascript string manipulation library.
- Superdiff - This library compares two arrays or objects and returns a full diff of their differences.
- tasuku - The minimal task runner for Node.js
- Uuid - Generate RFC-compliant UUIDs in JavaScript.
ORMs and Query Builders
- Bookshelf.js is a JavaScript ORM for Node.js, built on the Knex SQL query builder.
- Drizzle - Drizzle ORM is a headless TypeScript ORM with a head.
- How Query Engines Work
- Knex.js is a SQL query builder for PostgreSQL, CockroachDB, MSSQL, MySQL, MariaDB, SQLite3, Better-SQLite3, Oracle, and Amazon Redshift.
- Jedlik is an extensible DynamoDB ODM for Node, written in TypeScript.
- Leoric is an object-relational mapping library for Node.js.
- Objection.js - An SQL-friendly ORM for Node.js.
- Orange ORM The ultimate Object Relational Mapper for Node.js, Bun and Deno.
- Prisma provides the best experience for your team to work and interact with databases.
- Prismaliser
- Pure ORM - A pure ORM for writing native SQL queries yielding pure business objects.
- Sequelize - is a modern TypeScript and Node.js ORM for Oracle, Postgres, MySQL, MariaDB, SQLite and SQL Server.
- Waterline - An adapter-based ORM for Node.js with support for mysql, mongo, postgres, mssql (SQL Server), and more.
- Wetland - A Node.js ORM, mapping-based. Works with MySQL, PostgreSQL, SQLite and more.
Scheduling
- Agenda - A light-weight job scheduling library for Node.js.
- Bree - is the best job scheduler for Node.js and JavaScript with cron, dates, ms, later, and human-friendly support.
- Bull - The fastest, most reliable, Redis-based queue for Node.
Search
- Flexsearch - Web's fastest and most memory-flexible full-text search library with zero dependencies.
- Fuse.js - Powerful, lightweight fuzzy-search library, with zero dependencies.
- Lunr - Designed to be small, yet full featured, Lunr enables you to provide a great search experience without the need for external, server-side, search services.
- uFuzzy - is a fuzzy search library designed to match a relatively short search phrase (needle) against a large list of short-to-medium phrases.
Templating
- EJS - Embedded JavaScript templating.
- Eta - A faster, more lightweight, and more configurable EJS alternative. Works in Node, Deno and the browser.
- Handlebars - Minimal templating on steroids.
- Jade - The default templating language for Express.
- Liquid.js - A simple, expressive and safe template engine.
- Marko - is HTML re-imagined as a language for building dynamic and reactive user interfaces.
- Nunjucks - You've been looking for a more sophisticated templating engine for JavaScript.
- Pug - Another templating language.
- SquirrellyJS - Powerful, lightweight, pluggable JS template engine.
- Tempura - A light, crispy, and delicious template engine 🍤
- Vash is a template engine that offers a swift flow between code and content using Razor Syntax.
Testing
Tools
- Appwrite.io - Is a self-hosted backend-as-a-service platform that provides developers with all the core APIs required to build any application.
- Electron - Build cross-platform desktop apps with JavaScript, HTML, and CSS.
- ESBuild - An extremely fast bundler for the web.
- GRaderJS - Turn your full-stack NodeJS application into a downloadable cross-platform binary. Also works for SPAs, or regular web-sites.
- Mailtrap - A test mail server solution that allows testing email notifications without sending them to the real users.
- nvm - Simple bash script to manage multiple active node.js versions
- NVM Desktop is a desktop application that helps you manage multiple Node.js versions through a visual interface.
- nvm-windows - A node.js version management utility for Windows. Ironically written in Go.
- Parcel combines a great out-of-the-box development experience with a scalable architecture that can take your project from just getting started to massive production application.
- PM2 is a daemon process manager that will help you manage and keep your application online 24/7.
- Tinybench - Benchmark your code easily with Tinybench, a simple, tiny and light-weight.