Node.js
Understanding Node.js Core Concepts is great intro.
Tao of Node is useful. Broken Promises is a great talk on JS promises.
Currently prefer using Bun instead of Node. Deno is interesting too.
H3 is nice HTTP lib. If you're not using Bun, tsno or tsx are good for running node.
Notes
- I use package.json scripts as entrypoints to custom JS scripts. Make is a build tool, not a meta-shellscript format.
yarn upgrade-interactive --latest
to bulk choose which packages to upgrade to latest version.- when you install a package it will install dependencies of that package (since it needs them to run), but it won't install it's devDependencies
- this matters only when you publish a package for others to use (thats why
devDependencies
field in package.json exists)
- this matters only when you publish a package for others to use (thats why
Links
- Introduction to Node.js
- Node.Dev - Latest Node.js content, news and updates in one place.
- Original presentation by Ryan Dahl on node.js
- Node.js Best Practices
- Supercharge your debugging experience for Node.js
- ndb - Improved debugging experience for Node.js, enabled by Chrome DevTools.
- What is the Node way?
- Redbird - Modern reverse proxy for node.
- ncc - Simple CLI for compiling a Node.js module into a single file, together with all its dependencies, gcc-style.
- TestCafe - Node.js tool to automate end-to-end web testing.
- ndb - Improved debugging experience for Node.js, enabled by Chrome DevTools.
- Fastify - Fast and low overhead web framework, for Node.js. (Web) (What Is Fastify?)
- fastify-plugin - Plugin helper for Fastify.
- fastify-cli - Run a Fastify application with one command.
- Fastify Typescript Starter
- fastify-reply-from - Fastify plugin to forward the current HTTP request to another server. HTTP2 to HTTP is supported too.
- Nodal - API Services Made Easy With Node.js
- Node.js Fundamentals: Web Server Without Dependencies (2018)
- node-sqlite3 - Asynchronous, non-blocking SQLite3 bindings for Node.js.
- Pragmatic Modularity (2016)
- Stability first (2016)
- David - Node.js module that tells you when your package npm dependencies are out of date.
- httpie - Node.js HTTP client as easy as pie.
- Bull - Premium Queue package for handling distributed jobs and messages in NodeJS.
- depcheck - Check your npm module for unused dependencies.
- Marble.js - Functional reactive HTTP framework built on top of Node.js platform, TypeScript and RxJS.
- Nest - Progressive Node.js framework for building efficient and scalable server-side applications, heavily inspired by Angular. (Web) (Awesome) (Nest framework TypeScript starter)
- Nest CLI - CLI tool for Nest applications.
- Asynchronous Programming Library - Library of Asynchronous Programming Abstractions.
- Curated list of awesome developer tools for writing cross-platform Node.js code
- Simple Git - Light weight interface for running git commands in any node.js application.
- patch-package - Fix broken node modules instantly.
- Debugging in 2017 with Node.js
- np - Better npm publish.
- Using npm's
ls
command for Fun and Insight (2019) - TSBB - Zero-config CLI for TypeScript node.js application development.
- NodeSource - Low-impact monitoring for mission-critical Node.js applications.
- qnm - Simple cli utility for querying the node_modules directory.
- isolated-vm - Secure & isolated JS environments for nodejs.
- fnm - Fast and simple Node.js version manager, built in native ReasonML.
- pacote - Node.js library for downloading npm-compatible packages.
- node-module-boilerplate - Boilerplate to kickstart creating a Node.js module.
- stringio - Convert strings to Node.js streams and vice versa.
- npkill - Easily find and remove old and heavy node_modules folders.
- TaskBotJS - Best JavaScript/TypeScript job processing framework on the planet.
- Verdaccio - Lightweight private npm proxy registry.
- Node Serialport - Access serial ports with JavaScript. Linux, OSX and Windows.
- RunKit - Sandboxed JavaScript environment as notebooks.
- Velcro - Suite of packages designed to bridge the runtime gap between browser development and the node package ecosystem.
- Autarky - Liberating disk space from node_modules.
- pre-bundled - Tool that pre bundles and re publishes npm dependencies.
- oclif - Framework for building CLIs in Node.js
- Node.js Interview Questions
- SOLID: Introduction to software architecture & design principles with Node.js & TypeScript
- graffiti - Web-like GUI toolkit for node.js with minimal overhead. Lightweight, GPU-rendered alternative to electron.
- ls-engines - Determine if your dependency graph's stated "engines" criteria is met.
- relative-deps - Installs local dependencies for optimal developer experience.
- Pug - Robust, elegant, feature rich template engine for NodeJS.
- Nock - HTTP server mocking and expectations library for Node.js.
- Node.js CLI Apps Best Practices
- vm2 - Advanced vm/sandbox for Node.js.
- mock-fs - Allows Node's built-in fs module to be backed temporarily by an in-memory, mock file system.
- http-proxy-middleware - One-liner node.js http-proxy middleware for connect, express and browser-sync.
- ThreadBox - Recursive Worker Threads in NodeJS.
- Helpful libraries and resources for building Node.js CLIs
- Node.js Backend Architecture Typescript Project
- react-blessed - React custom renderer for the blessed library.
- v8-compile-cache - Require hook for automatic V8 compile cache persistence.
- nve - Run any command on specific Node.js versions.
- node-cpp-skel - Skeleton for bindings to C++ libraries for Node.js using node-addon-api.
- Domain-Driven Design w/ TypeScript & Node.js (Vinyl-Trading enterprise app built with Node.js + TypeScript using Domain-Driven Design)
- Official Docker Image for Node.js
- Learn ES Modules in Node with Myles Borins (2020)
- Node File Trace - Determine exactly which files (including node_modules) are necessary for the application runtime.
- Awesome npm scripts
- Emma - Terminal assistant to find and install node packages.
- v8-perf - Notes and resources related to V8 and thus Node.js performance.
- VSCode Language Server - Node
- tslog - Beautiful logging experience for Node.js with TypeScript support.
- Objection.js - SQL-friendly ORM for Node.js.
- AWS Box - Featherweight PaaS on top of Amazon EC2 for deploying node apps.
- Using Streams Efficiently in NodeJS (2020)
- Native ESM in Node.js w/ require() fallbacks and support for all front end compilers (2020)
- fetch-h2 - Fetch API implementation for Node.js using the built-in http, https and http2 packages without any compatibility layer.
- piscina - Fast, efficient Node.js Worker Thread Pool implementation.
- Tinypool - Fork of piscina. Fast, efficient Node.js Worker Thread Pool implementation.
- Objection.js - SQL-friendly ORM for Node.js.
- Build JavaScript applications with Node.js
- Node.js Notes
- How to stream file downloads in Node.js with Got (2020)
- orogene - Next-generation platform and package manager for Node.js-compatible and frontend JavaScript projects.
- undici - HTTP/1.1 client, written from scratch for Node.js.
- cheerio - Fast, flexible & lean implementation of core jQuery designed specifically for the server.
- Skia Canvas - Skia + Rust = Serverside Canvas for Node. (HN)
- Intro to Node That You May Have Missed (2018)
- node-postgres - Non-blocking PostgreSQL client for Node.js. Pure JavaScript and optional native libpq bindings.
- Docker best practices with Node (2020)
- Performance Best Practices Using Express in Production
- Node.js' Tooling Group - Advancing Node.js as a framework for writing great tools.
- 5 TILs about Node.js Fundamentals from the Node.js Design Patterns Book (2020)
- Promise Pool - Map-like, concurrent promise processing.
- Node CLI Automation - Build Node.js Command-line Automation Dev-tools.
- Top 11 Node.js ORMs, Query Builders & Database Libraries in 2020
- npm-check-updates - Upgrades your package.json dependencies to the latest versions, ignoring specified versions.
- yarn-audit-fix - Apply npm audit fix logic to yarn.lock.
- @hapi/lab - Node test utility.
- live-plugin-manager - Node.js module that allows you to install, uninstall and load any node package at runtime from npm registry.
- Run yarn/npm scripts with fzf (2020)
- PnPm - Fast, disk space efficient package manager. (Docs) (Web) (HN) (How it works)
- node-request-interceptor - Low-level HTTP/HTTPS/XHR request interception library for Node.
- napi-rs - Minimal library for building compiled NodeJS add-ons in Rust. (Docs) (Web Code) (Tweet) (HN)
- Template project for writing node package with napi-rs
- esno - TypeScript/ESNext node runtime powered by esbuild.
- TypeScript Tools for Node.js
- Learning Node.js internals
- Boa - Call python functions from Node.
- Cliffy - Framework For Interactive CLIs.
- localPorridge - Rip-off of localStorage for Node.
- Why does package-lock.json exist, and how does it work? (2020)
- NodeConf Remote
- node-csv - Full featured CSV parser with simple api and tested against large datasets.
- totalist - Tiny utility to recursively list all (total) files in a directory.
- Hyperbee - Append-only Btree running on a Hypercore.
- tinyhttp - Tiny web framework as a replacement of Express.
- Awesome Node Native ESM modules
- npm-diff - Diff two versions of a node module.
- Esbuilt optimizer - Convert your dependencies to ESM bundles using esbuild.
- Why Node isn't exiting?
- fast-csv - Library for parsing and formatting CSVs or any other delimited value file in node.
- ipt - Interactive Pipe To: The Node.js cli interactive workflow.
- node-gyp - Cross-platform command-line tool written in Node.js for compiling native addon modules for Node.js.
- lockfile-lint - Lint an npm or yarn lockfile to analyze and detect security issues.
- systeminformation - System Information Library for Node.JS.
- fastify-micro - Opinionated Node.js microservices framework built on Fastify.
- wsrun - Command runner for Yarn workspaces. Dependency aware.
- Bree - Best job scheduler for Node.js and JavaScript with cron, dates, ms, later, and human-friendly support.
- kevin-middleware - Express middleware that makes developing javascript in a monorepo easier.
- nestjs-pgpromise - Module for Utilizing Pg-promise with NestJS.
- byline - Line-by-line Stream reader for node.js.
- PM2 - Node.js Production Process Manager with a built-in Load Balancer. (Web)
- keytar - Native Node module to get, add, replace, and delete passwords in system's keychain.
- npm-run-all - CLI tool to run multiple npm-scripts in parallel or sequential.
- mock-require - Simple, intuitive mocking of Node.js modules.
- NPM Trends - Compare NPM package downloads. (Code)
- gh-release - Create a github release for a node package.
- Our Journey to a High-Performance Node.js Library (2020)
- Corepack - Zero-runtime-dependency package acting as bridge between Node projects and their package managers.
- lazynpm - Simple terminal UI for npm commands, written in Go.
- Retes - Typed, Declarative, Data-Driven Routing for Node.js.
- node-glob - Match files using the patterns the shell uses.
- Yarn Build - Build and bundle your local packages like Bazel and Buck but for Yarn v2. (Web) (Introduction)
- yarn-deduplicate - Deduplication tool for yarn.lock files.
- The Node Experiment - Exploring Async Basics with Rust. Aims to take a look at the why and how of concurrent programming. (Code)
- nbin - Fast and robust node.js binary compiler.
- Similar NPM Packages - Similar packages suggestions for the NPM ecosystem.
- Roarr - JSON logger for Node.js and browser.
- npm-upgrade - Interactive CLI utility to easily update outdated NPM dependencies.
- Curveball - Framework for building web services in Node.js. It fullfills a similar role to Express and it's heavily inspired by Koa.
- a12n-server - Ready-to-go OAuth2 server for Node.js.
- pure-http - Simple web framework for Node.js with zero dependencies.
- Distributed Systems with Node.js: Building Enterprise-Ready Backend Services (2020)
- esbuild-node-tsc - Build your Typescript Node.js projects using blazing fast esbuild.
- esbuild-runner - Super-fast on-the-fly transpilation of modern JS, TypeScript and JSX using esbuild.
- vercel/pkg - Package your Node.js project into an executable.
- Node Package Maintenance Team - Discussion of helping with maintenance of key packages in the ecosystem.
- Minimal Node.js Docker Images built on Alpine Linux
- got - Human-friendly and powerful HTTP request library for Node.js.
- NPM RFCs
- Farrow - Functional-style web framework for node.js written by TypeScript.
- Celery.node - Celery task queue client/worker for nodejs.
- Pipe Streams in Node in the Right Way (2020)
- shargs (shell args) - Library for building command-line argument parsers.
- NodeGui - Build performant, native and cross-platform desktop applications with Node.js and CSS like styling. Powered by Qt. (Web)
- Profiling Node.js - Collection of articles and tools to efficiently profile Node.js.
- Zeronode - Minimal building block for NodeJS microservices.
- Amplication - Instantly Generate Node.js Apps with GraphQL and REST API. (Web) (HN)
- canarist - Like npm link, but for workspaces / monorepos.
- Concurrently - Run multiple commands concurrently. Like npm run watch-js & npm run watch-less but better.
- node-bindgen - Easy way to write native Node.js module using idiomatic Rust.
- tasksfile - Minimalistic task runner for node.js.
- Node.js race conditions (2021)
- fs-extra - Node.js: extra methods for the fs object like copy(), remove(), mkdirs().
- Gluegun - Delightful toolkit for building TypeScript-powered command-line apps.
- node-pty - Fork pseudoterminals in Node.JS.
- LRT - Scheduler for long-running tasks inside browsers and Node.JS.
- ReactXpress - React renderer to build Node.js server.
- Node.js 14 is over 20x faster than Python3.8 for fib(n) (HN)
- Using ES Modules (ESM) in Node.js: A Practical Guide (2021) (HN)
- Envalid - Environment variable validation for Node.js.
- Express Typescript Boilerplate - Delightful way to building a RESTful API with NodeJs & TypeScript.
- Bytenode - Minimalist bytecode compiler for Node.js.
- rools - Small rule engine for Node.
- I finally escaped Node (and you can too) (2021) (Lobsters)
- LoopBack - Highly extensible Node.js and TypeScript framework for building APIs and microservices. (Code)
- Sending tuples from Node to Rust and back (2021)
- HugSql - Node.js library for embracing SQL.
- esmon - Like nodemon but using esbuild.
- MikroORM - TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. (Code)
- Haf - Fully typed, cross-platform, persistent config solution for your NodeJS projects with a great developer experience.
- nanoexpress - Professional backend framework for Node.js.
- unimported - CLI utility that scans node/JavaScript projects to report dangling files and unused dependencies.
- boxednode - Ship a JS file with Node.js in a box.
- caxa - Package Node.js applications into executable binaries.
- Dependency Managers Don’t Manage Your Dependencies (2021)
- Specialist - Library that helps you write tiny, fast, bundled and beautiful CLI apps that can automatically check for updates.
- Steno - Specialized fast async file writer.
- WebContainers: Run Node.js natively in the browser (2021) (HN)
- envfile - Parse and write environment files with Node.js.
- listr2 - Create beautiful CLI interfaces via easy and logical to implement task lists that feel alive and interactive.
- node-rs - Rust Node.js bindings.
- node-dev - Zero-conf Node.js reloading.
- How to update all the Node dependencies to their latest version
- nact - Node.js + actors. Redux but for the server. (Web)
- Yalc - Better workflow than npm | yarn link for package authors.
- Awesome NodeJS Security
- Volt - Fastest Node.js Package Manager. (Code)
- workerpool - Offload tasks to a pool of workers on node.js and in the browser.
- esbuild-node-externals - Esbuild plugin to easily exclude node modules during builds.
- Bema - Delightful benchmarking for Node.js.
- Hammer - Build Tool for Browser and Node Applications.
- Commander.js - Node.js command-line interfaces made easy.
- AdonisJS - Fully featured web framework for Node.js. (Code)
- flydrive - Framework-agnostic package which provides a powerful wrapper to manage file Storage in Node.js.
- Japa - Embedable test runner for Node.js.
- Lucid - Official SQL ORM for AdonisJS.
- tinyhttp/jwt - JWT middleware for HTTP servers.
- TypeScript and native ESM on Node.js (2021)
- NPM audit: Broken by Design (2021) (HN) (Tweet) (Tweet)
- Yarn 3.0: Performances, ESBuild, Better Patches (2021) (HN)
- Nodashka - Babashka-like tool for Node.js.
- Non-blocking I/O and how Node uses it, in friendly terms (2021)
- Hello Yarn 2, Goodbye node_modules (2021) (HN)
- PureORM - Node.js SQL toolkit for writing native SQL queries yielding pure business objects.
- stream-json - Micro-library of node.js stream components with minimal dependencies for creating custom data processors oriented on processing huge JSON files.
- Edge - Node.js templating engine with fresh air.
- Poolifier - Fast and small Node.js thread pool implementation.
- tasuku - Minimal task runner for Node.js.
- pathe - Normalized paths for Node.js.
- Node Mono Library Template - Provides a GitHub mono repository template for a Anolilab Node libraries, using GitHub actions.
- Auto NPX - Auto resolving local Node.js binaries in VS Code terminal.
- Ask HN: Why is Node.js hated so much? (2021)
- parcel/watcher - Native C++ Node module for querying and subscribing to filesystem events.
- FormData - Spec-compliant FormData implementation for Node.js.
- Comedy - Node.js actor framework.
- fs-memoize - Simple, zero-dependency NodeJs filesystem memoizer.
- stream-http - Streaming node http in the browser.
- Moleculer - Progressive microservices framework for Node.js. (Web) (Template)
- skr canvas - Google Skia binding to Node.js via Node-API, 0 System dependencies.
- Clipanion - Type-safe CLI library with no runtime dependencies. (Web)
- HyperExpress - High performance Node.js webserver with a simple-to-use API powered by uWebsockets.js under the hood.
- CORS Anywhere - NodeJS proxy which adds CORS headers to the proxied request.
- tsno -
node
with typescript support, importing from URL, etc. - Vite as Node.js runtime
- node-config - Node.js Application Configuration.
- Supercharge Your Node.js with Rust (2021) (HN)
- cli-ux - CLI IO utilities.
- Better SSE - Dead simple, dependency-less, spec-compliant server-side events implementation for Node, written in TypeScript.
- cache-interop - Interoperable cache adapters for node and browsers.
- How to distribute pre-built node binaries (2021)
- Designing Error Messages and a Logging Strategy in Node.js (2021)
- await-to-js - Async await wrapper for easy error handling without try-catch.
- formidable - Node.js module for parsing form data, especially file uploads.
- thread-stream - Streaming way to send data to a Node.js Worker Thread.
- next-10 - Discussion on strategic directions for next 10 years of Node.js.
- p4ssw0rd - Hash passwords with SHA-256 + bcrypt in Node.js.
- A Guide to Load Testing Node.js APIs with Artillery (2021)
- find-my-way - Crazy fast HTTP router.
- fastest-validator - Fastest JS validator library for NodeJS | Browser | Deno.
- fast-gateway - Super fast, framework agnostic Node.js API Gateway for the masses. (Article)
- Easily build NodeJS projects inside a docker container (Lobsters)
- Agenda - Light-weight job scheduling library for Node.js.
- synchronous-worker - Run Node.js APIs synchronously.
- Base - Foundation for creating modular, unit testable and highly pluggable, server-side node.js applications.
- node-safe - Make using Node.js safe again with Deno-like permissions.
- shrun - Test NodeJS CLI commands in isolated docker containers.
- Bottleneck - Lightweight and zero-dependency Task Scheduler and Rate Limiter for Node.js and the browser.
- Follow Redirects - Node.js module that automatically follows HTTP(S) redirects.
- ultrafetch - node-fetch backed with an RFC-7234 compliant filesystem cache.
- gpkg - Global Node binary manager written in Rust.
- How to deploy a NodeJS application using Fly.io (2021)
- dats - Minimalistic zero-dependencies UDP/TCP statsd client for Node.js.
- WebAPI - Use Web APIs for Node.
- type-flag - CLI argument parser with first-class type support.
- next-chunk - Asynchronously returns the next chunk in a Node.js readable stream.
- kv-orm/core - Node.js ORM for key-value datastores.
- 0x - Profile and generate an interactive flamegraph for a Node process with a single command.
- jiti - Runtime Typescript and ESM support for Node.js.
- mlly - Missing ECMAScript module utils for Node.js.
- siroc - Zero-config but extensible framework for developing Node applications and libraries.
- Awilix - Extremely powerful Inversion of Control (IoC) container for Node.JS.
- Level - Node.js modules to build your very own database. (GitHub)
- subleveldown - Split a levelup database into sublevels with their own keyspace, encoding and events.
- tree-sitter-highlight - Syntax highlighter for Node powered by Tree Sitter. Written in Rust.
- Node.js Integration Tests Best Practices
- Testcontainers Node - NodeJS library that supports tests, providing lightweight, throwaway instances of common databases, Selenium web browsers.
- node-cli-starter - Minimal starter kit for building Node CLI applications with TypeScript.
- Node.js Addon Examples
- cleye - Intuitive CLI development tool for Node.js.
- Youch - Pretty error reporting for Node.js.
- rust-nodejs - Embedding Node.js in Rust.
- Node.js Technical Steering Committee
- Debugging Node.js Libraries (2021)
- make-fetch-happen - Making fetch happen for npm.
- nconf - Hierarchical node.js configuration with files, environment variables, command-line arguments, and atomic object merging.
- napi.zig - Tiny and fast node-api bindings for zig.
- pprof support for Node.js
- cross-fetch - Universal WHATWG Fetch API for Node, Browsers and React Native.
- HN: Fetch API has landed into Node.js
- Cloud Profiler: Node.js Client - Adds support for Cloud Profiler to Node.js applications.
- snm - Smol and simple node version manager written in rust.
- ShellJS - Portable Unix shell commands for Node.js.
- Graceful Server - Tiny (~5k), KISS, dependency-free Node.JS library to make your API more graceful.
- replacestream - Node.js through stream that does basic streaming text search and replace and is chunk boundary friendly.
- Tumau - Node HTTP framework written in Typescript.
- node-canvas - Node canvas is a Cairo backed Canvas implementation for NodeJS.
- NATS.js - Node.js client for the NATS messaging system.
- manten - Lightweight testing library for Node.js.
- request-retry - HTTP(s) request retry on recoverable errors.
- timecut - Node.js program to record smooth movies of web pages with JavaScript animations.
- japa/runner - API first tests runner for Node.js.
- Server-sent events for NodeJS
- tiny-typed-emitter - Fully type-checked NodeJS EventEmitter.
- node-web-streams - WhatWG web streams and utilities for node.js.
- napi-rs/dog - Watch/compile/restart your Node.js application for developing.
- Mitm.js - Intercept and mock outgoing Node.js network TCP connections and HTTP requests for testing.
- Workshop on Node.js Streams
- node-ipc - Inter Process Communication Module for node supporting Unix sockets, TCP, TLS, and UDP.
- Netlify Zip it and Ship it - Intelligently prepare Node.js Lambda functions for deployment.
- fetch() In Node.js Core: Why You Should Care (2022)
- reSolve - Full stack CQRS, DDD, Event Sourcing framework for Node.js.
- EvtStore - Type-safe Event Sourcing and CQRS with Node.JS and TypeScript.
- tiny glob - Tiny and extremely fast library to match files and folders using glob patterns.
- proxy-chain - Programmable HTTP proxy server for Node.js.
- Node-convict - Featureful configuration management library for Node.js.
- Tao of Node - Design, Architecture & Best Practices (2022)
- node-bluetooth - Bluetooth serial port communication for Node.js.
- DeAsync.js - Turns async function into sync via JavaScript wrapper of Node event loop.
- Strom - Dependency-free stream utils for Node.js.
- synckit - Perform async work synchronously in Node.js using worker_threads with first-class TypeScript support.
- Node "exports" field explanation
- Better Queue for NodeJS
- valienv - Simple environment variables validator for Node.js and web browsers.
- meta-fetcher - Simple metadata scrapper for node.js.
- Nightwatch.js - End-to-end testing framework written in Node.js and using the W3C Webdriver API.
- cron-parser - Node.js library for parsing crontab instructions.
- nat-api - Fast port mapping with UPnP and NAT-PMP.
- watch-dependency-graph - Small Node.js file watcher for watching dependency trees.
- deoptigate - Investigates v8/Node.js function deoptimizations.
- node-http-proxy - HTTP programmable proxying library that supports websockets. Suitable for implementing components such as reverse proxies and load balancers.
- NodeJS packages don't deserve your trust (HN) (Lobsters)
- Web standard IO APIs implemented for NodeJS
- c8 - Output coverage reports using Node.js' built in coverage.
- Node.js 18 Introduces Prefix-Only Core Modules (2022)
- Nexe - Create a single executable out of your node.js apps.
- express-session - Simple session middleware for Express.
- Node Clean Architecture Template
- fs-spy - Monitoring fs accessing for Node process.
- args-flags - Simple command line argument parser for Node.
- Node.js Modules Team
- Node Addon API Module - Module for using Node-API from C++.
- Lad - Node.js web framework.
- node-tap - Test Anything Protocol tools for node.
- Piston - High performance general purpose code execution engine.
- Sort Package.json - Sort an Object or package.json based on the well-known package.json keys.
- pnpm monorepo example - Opinionated Node.js monorepo example with pnpm, turborepo, and jest.
- Which Monorepo is right for a Node.js backend? (2022)
- busboy - Streaming parser for HTML form data for node.js.
- Node.js Design Patterns (Code)
- Node.js Diagnostics Working Group
- cjs-loader - Node.js loader for compiling ESM & TypeScript modules to CommonJS.
- esm-loader - Node.js loader for compiling TypeScript modules to ESM.
- tsx - Node.js runtime enhanced with esbuild for loading TypeScript & ESM.
- Node Task List - Interactive CLI to list and run package.json scripts.
- HatTip - Like Express, but for the future.
- Sidewinder - Type Safe Micro Services for Node.
- Lilconfig - Zero-dependency nodejs config seeker.
- mojo.js - Real-time web framework for Node.js.
- better-logging - Drop in replacement for the default logging methods of node.js.
- Functions Framework for Node.js - Open source FaaS (Function as a Service) framework based on Express for writing portable Node.js functions.
- milliparsec - Tiniest body parser in the universe. Built for modern Node.js
- lru-send - LRU-based caching middleware for Node.js.
- Creating Node.js Docker images that build in 2 seconds (2022)
- node-temp - Temporary File, Directory, and Stream support for Node.js.
- Natural - Fastest Framework for NodeJS. Written in pure ES6+.
- avvio - Asynchronous bootstrapping of Node applications.
- tinysh - Tiny spawn wrapper for Node.js.
- Hagana - NodeJS runtime protection for supply chain attacks.
- QuickReader - Ultra-high performance stream reader for browser and Node.js.
- kleur - Fastest Node.js library for formatting terminal text with ANSI colors.
- Working with the file system on Node.js (2022)
- Snowflake-UUID - Twitter's Snowflake generator for NodeJS.
- pino-http - High-speed HTTP logger for Node.js.
- fs-jetpack - Better file system API for Node.js.
- file-cache - Node.js library that provide a cache for file metadata or file content.
- fine - Zero dependency and opinionated package that gracefully shutdown Node.js applications.
- pkg-fetch - Utility to fetch or build patched Node binaries used by
pkg
to generate executables. - OpenAPI in Node - Monorepo of various packages to power OpenAPI in node.
- APNS2 - Node client for connecting to Apple's Push Notification Service using the new HTTP/2 protocol with JSON web tokens.
- An overview of Node.js: architecture, APIs, event loop, concurrency
- Building Typescript Node Apps With Nix (2022)
- Floco - Node.js Nix expressions.
- node-jose - JavaScript implementation of the JSON Object Signing and Encryption (JOSE).
- skott - Automatically construct, traverse and visualize graphs generated from your Node.js project.
- node-jq - Node.js wrapper for jq.
- python-shell - Simple way to run Python scripts from Node.js with basic but efficient inter-process communication and better error handling.
- Minimize Heap Allocations in Node.js (2022)
- readable-stream - Node.js core streams for userland.
- Sentry Profiling SDK for NodeJS
- Umzug - Framework agnostic migration tool for Node.js.
- NodeConf EU 2022 (Videos) (Notes)
- jsonc-parser - Scanner and parser for JSON with comments.
- Making Fetch Happen - Ethan Arrowood (2022)
- Learning WebAssembly, Rust, and Node.js
- TS-Evaluator - Interpreter for Typescript that can evaluate an arbitrary Node within a Typescript AST.
- flamebearer - Blazing fast flame graph tool for Node and V8.
- Walker - Node HTTP server with a rust backend.
- httpx/exception - Delightful http exceptions for node, edge & browser. Serialization/SSR and logging in mind.
- Exploring competitive features in Node.js v18 and v19 (2022) (HN)
- nleak - Automatic memory leak detection and diagnosis tool for NodeJS.
- lookpath - Minimum and most straightforward way to check if command exists and where the executable is, without spawning child_process.
- nypm - Unified Package Manager for Node.js.
- Implementation of the napi API for WASM
- Node.js Middleware – никогда больше! (2020)
- Scriptful - Create better package.json scripts.
- prebuild-install - Command line tool to easily install prebuilt binaries for multiple versions of Node & Electron on a specific platform.
- Symphonia - Cross-platform zero dependency audio playback library for Node.
- stale-dep - Check if your node_modules is stale.
- http-compression - Adding compression (gzip/brotli) for your HTTP server in Node.
- Building Reliable Distributed Systems in Node.js (2023) (HN)
- Node calls Python - Call Python from NodeJS directly in-process without spawning processes.
- Jazzer.js - Coverage-guided, in-process fuzzing for the Node.js.
- Needle - Nimble, streamable HTTP client for Node.js. With proxy, iconv, cookie, deflate & multipart support.
- Nodeiflux Discord
- Monitoring Node.js Performance (2023)
- Nodebox - Runtime for executing Node.js modules in the browser. (Article)
- WhatWG Node - Platform agnostic libraries for all JS environments.
- A Deep Dive into Node.js: Understanding its history, threading, and event-driven architecture (2023)
- Run That - Command line utility able to run multiple npm-scripts at once.
- Node.js multithreading with worker threads: pros and cons (2023)
- Defer - Zero infrastructure Node.js background jobs. (Docs) (Docs Code)
- Turbowatch - Extremely fast file change detector and task orchestrator for Node.
- node-gyp-build - Build tool and bindings loader for node-gyp that supports prebuilds.
- env-var - Verification, sanitization, and type coercion for environment variables in Node.
- Nodepad - All-in-one platform for creating, executing, and sharing Node.js code snippets.
- npm-package-json-lint - package.json linter for Node projects.
- lazyrepo - Caching task runner for npm/pnpm/yarn monorepos.
- High Performance with Node.js (2023)
- Exposing a Rust Library to Node with Napi-rs (2023)
- Rock-req - Ensure your HTTP requests always reach their destination as efficiently as possible.
- Madrun - CLI tool to run multiple npm-scripts in a madly comfortable way.
- zig-build - Node.js native addon build and cross-compile library using Zig.
- Node Cache Manager
- openGraphScraper
- authsessions - Manage NodeJS server sessions easily in-memory or in Redis.
- Pythagora - Generate automated tests for your Node.js app via LLMs without developers having to write a single line of code.
- tiktoken-node - OpenAI's tiktoken but with node bindings.
- tar-transform - Extract, transform and re-pack tarball entries in form of stream with very simple API.
- Writing a Node Library in Rust (2023)
- launch-editor - Open file in editor from Node.js.
- Understanding Node.js Core Concepts Course
- toad-scheduler - In-memory TypeScript job scheduler that repeatedly executes given tasks within specified intervals of time.
- pacquet - Experimental package manager for NodeJS.
- HTTP Cookie Agent - Allows cookies with every Node.js HTTP clients.
- Stream To Async Iterator
- Writing Node Libraries in Rust | Prime Reacts (2023)
- Node.js Toolbox Catalog
- Node.js's Config Hell Problem (2023)
- dynohot - Hot module reloading for Node.
- tinyshell - Tiny
node:child_process
wrapper for shell scripts. - ECMAScript Modules Loaders
- Node.js Performance Team
- My Node.js is a bit Rusty (2023) (HN)
- streamx - Iteration of the Node.js core streams with a series of improvements.