?β ?π΄ My open source work is supported by the community
An open-source framework that supports any programming language, cloud provider, or deployment automation tool.
Flow is built for devs who live in their tools. Speak and give more context, get better results.
Just type π node.cool to go here. Follow me on Twitter.
π Node.js is an open-source, cross-platform, JavaScript runtime for writing servers and command-line tools.
- Official
- Packages
- Mad science
- Command-line apps
- Functional programming
- HTTP
- Debugging / Profiling
- Logging
- Command-line utilities
- Build tools
- Hardware
- Templating
- Web frameworks
- Documentation
- Filesystem
- Control flow
- Streams
- Real-time
- Image
- Text
- Number
- Math
- Date
- URL
- Data validation
- Parsing
- Humanize
- Compression
- Network
- Database
- Testing
- Security
- Benchmarking
- Minifiers
- Authentication
- Authorization
- Job queues
- Node.js management
- Cross-platform integration
- Natural language processing
- Process management
- Automation
- AST
- Static site generators
- Content management systems
- Forum
- Blogging
- Weird
- Serialization
- Miscellaneous
- Package Manager
- Resources
- Related lists
- π Website
- π Documentation
114985β34222π΄Repository)
30661β2787π΄webtorrent) - Streaming torrent client for Node.js and the browser.6260β671π΄peerflix) - Streaming torrent client.1264β140π΄ipfs) - Distributed file system that seeks to connect all computing devices with the same system of files.- stackgl - Open software ecosystem for WebGL, built on top of browserify and npm.
319β16π΄peerwiki) - All of Wikipedia on BitTorrent.519β37π΄peercast) - Stream a torrent video to Chromecast.5957β2237π΄BitcoinJS) - Clean, readable, proven Bitcoin library.4975β2153π΄Bitcore) - Pure and powerful Bitcoin library.10548β1204π΄PDFKit) - PDF generation library.10145β991π΄turf) - Modular geospatial processing and analysis engine.451β26π΄webcat) - p2p pipe across the web using WebRTC that uses your GitHub private/public key for authentication.7340β624π΄NodeOS) - The first operating system powered by npm.1212β137π΄YodaOS) - AI operating system.14838β1082π΄Brain.js) - Machine-learning framework.2585β209π΄Pipcook) - Front-end algorithm framework to create a machine learning pipeline.10772β1654π΄Cytoscape.js) - Graph theory (a.k.a. network) modeling and analysis.3843β259π΄js-git) - JavaScript implementation of Git.36098β7989π΄xlsx) - Pure JS Excel spreadsheet reader and writer.8019β446π΄isomorphic-git) - Pure JavaScript implementation of Git.
7661β309π΄np) - Betternpm publish.171β27π΄npm-name) - Check a package name's availability on npm.192β11π΄gh-home) - Open the GitHub page of the repo in the current directory.201β9π΄npm-home) - Open the npm page of a package.2645β83π΄trash) - Safer alternative torm.3944β173π΄speed-test) - Test your internet connection speed and ping.9754β734π΄pageres) - Capture website screenshots.436β68π΄cpy) - Copy files.4171β153π΄vtop) - More better top, with nice charts.136β7π΄empty-trash) - Empty the trash.390β15π΄is-up) - Check whether a website is up or down.1356β88π΄is-online) - Check if the internet connection is up.1061β68π΄public-ip) - Get your public IP address.504β12π΄clipboard-cli) - Copy & paste on the terminal.7942β301π΄XO) - Enforce strict code style using the JavaScript happiness style.26751β4874π΄ESLint) - The pluggable linting utility for JavaScript.967β68π΄David) - Tells you when your package npm dependencies are out of date.14116β1549π΄http-server) - Simple, zero-config command-line HTTP server.4566β500π΄Live Server) - Development HTTP-server with livereload capability.346β17π΄bcat) - Pipe command output to web browsers.243β22π΄normit) - Google Translate with speech synthesis in your terminal.6966β162π΄fkill) - Fabulously kill processes. Cross-platform.418β13π΄pjs) - Pipeable JavaScript. Quickly filter, map, and reduce from the terminal.1668β220π΄license-checker) - Check licenses of your app's dependencies.462β66π΄browser-run) - Easily run code in a browser environment.127β4π΄tmpin) - Adds stdin support to any CLI app that accepts file input.1087β91π΄wallpaper) - Change the desktop wallpaper.329β15π΄pen) - Live Markdown preview in the browser from your favorite editor.677β32π΄dark-mode) - Toggle the macOS Dark Mode.250β18π΄Jsome) - Pretty prints JSON with configurable colors and indentation.117β10π΄mobicon) - Mobile app icon generator.72β10π΄mobisplash) - Mobile app splash screen generator.578β53π΄diff2html-cli) - Pretty git diff to HTML generator.1136β32π΄trymodule) - Try out npm packages in the terminal.5121β218π΄jscpd) - Copy/paste detector for source code.811β39π΄atmo) - Server-side API mocking.1203β50π΄auto-install) - Auto installs dependencies as you code.2866β41π΄cost-of-modules) - Find out which dependencies are slowing you down.21821β1541π΄localtunnel) - Expose your localhost to the world.4168β133π΄svg-term-cli) - Share terminal sessions via SVG.9893β329π΄gtop) - System monitoring dashboard for the terminal.5760β133π΄themer) - Generate themes for your editor, terminal, wallpaper, Slack, and more.5976β127π΄carbon-now-cli) - Beautiful images of your code β from right inside your terminal.249β19π΄cash-cli) - Convert between 170 currencies.9242β392π΄taskbook) - Tasks, boards & notes for the command-line habitat.649β17π΄discharge) - Easily deploy static websites to Amazon S3.8990β225π΄npkill) - Easily find and remove old and heavy node_modules folders.
61514β7107π΄lodash) - Utility library delivering consistency, customization, performance, & extras. A better and faster Underscore.js.33100β1773π΄immutable) - Immutable data collections.24105β1433π΄Ramda) - Utility library with a focus on flexible functional composition enabled by automatic currying and reversed argument order. Avoids mutating data.1286β118π΄Mout) - 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.31585β3001π΄RxJS) - Functional reactive library for transforming, composing, and querying various kinds of data.1880β96π΄Kefir.js) - Reactive library with focus on high performance and low memory usage.
14845β970π΄got) - Nicer interface to the built-inhttpmodule.7338β686π΄undici) - High performance HTTP client written from scratch with zero dependencies.677β20π΄ky-universal) - Universal HTTP client based on Fetch.8859β1050π΄node-fetch) -window.fetchfor Node.js.108421β11468π΄axios) - Promise based HTTP client (works in the browser too).16650β1330π΄superagent) - HTTP request library.313β22π΄http-fake-backend) - Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.?β?π΄cacheable-request) - Wrap native HTTP requests with RFC compliant cache support.411β21π΄gotql) - GraphQL request library built on14845β970π΄got).387β49π΄global-agent) - Global HTTP/HTTPS proxy agent that is configurable using environment variables.201β16π΄smoke) - File-based HTTP mock server with recording abilities.563β23π΄purest) - REST client.
11411β961π΄debug) - Tiny debugging utility.1941β50π΄why-is-node-running) - Node.js is running but you don't know why?378β41π΄njsTrace) - Instrument and trace your code, see all function calls, arguments, return values, as well as the time spent in each function.59β3π΄vstream) - Instrumentable streams mix-ins to inspect a pipeline of streams.252β4π΄stackman) - Enhance an error stacktrace with code excerpts and other goodies.307β18π΄locus) - Starts a REPL at runtime that has access to all variables.3518β115π΄0x) - Flamegraph profiling.121β9π΄ctrace) - Well-formatted and improved trace system calls and signals.1591β37π΄leakage) - Write memory leak tests.1167β101π΄llnode) - Post-mortem analysis tool which allows you to inspect objects and get insights from a crashed Node.js process.224β6π΄thetool) - Capture different CPU, memory, and other profiles for your app in Chrome DevTools friendly format.934β144π΄swagger-stats) - Trace API calls and monitor API performance, health, and usage metrics.203β23π΄NiM) - Manages DevTools debugging workflow.103β2π΄dats) - Minimalistic and zero-dependencies17984β1951π΄StatsD) client.
17084β937π΄pino) - Extremely fast logger inspired by Bunyan.24277β1845π΄winston) - Multi-transport async logging library.113β29π΄console-log-level) - The most simple logger imaginable with support for log levels and custom prefixes.763β38π΄storyboard) - End-to-end, hierarchical, real-time, colorful logs and stories.7078β210π΄consola) - Console logger.
22862β901π΄chalk) - Terminal string styling done right.3677β153π΄meow) - CLI app helper.11416β1011π΄yargs) - Command-line parser that automatically generates an elegant user-interface.9545β283π΄ora) - Elegant terminal spinner.346β30π΄get-stdin) - Easier stdin.1125β41π΄log-update) - Log by overwriting the previous output in the terminal. Useful for rendering progress bars, animations, etc.33614β798π΄Ink) - React for interactive command-line apps.628β40π΄listr2) - Terminal task list.1316β136π΄conf) - Simple config handling for your app or module.532β51π΄ansi-escapes) - ANSI escape codes for manipulating the terminal.768β35π΄log-symbols) - Colored symbols for various log levels.614β23π΄figures) - Unicode symbols with Windows CMD fallbacks.1651β62π΄boxen) - Create boxes in the terminal.656β28π΄terminal-link) - Create clickable links in the terminal.1059β30π΄terminal-image) - Display images in the terminal.514β36π΄string-width) - Get the visual width of a string - the number of columns required to display it.88β15π΄cli-truncate) - Truncate a string to a specific width in the terminal.11735β556π΄blessed) - Curses-like library.21348β1342π΄Inquirer.js) - Interactive command-line prompt.272β17π΄yn) - Parse yes/no like values.596β48π΄cli-table3) - Pretty unicode tables.1023β29π΄drawille) - Draw on the terminal with unicode braille characters.237β19π΄ascii-charts) - ASCII bar chart in the terminal.2997β222π΄progress) - Flexible ascii progress bar.556β53π΄insight) - Helps you understand how your tool is being used by anonymously reporting usage metrics to Google Analytics.113β7π΄cli-cursor) - Toggle the CLI cursor.36β2π΄cli-columns) - Columnated unicode and ansi-safe text lists.1801β65π΄cfonts) - Sexy ASCII fonts for the console.293β22π΄multispinner) - Multiple, simultaneous, individually controllable CLI spinners.1399β43π΄omelette) - Shell autocompletion helper.6524β259π΄cross-env) - Set environment variables cross-platform.14378β743π΄shelljs) - Portable Unix shell commands.100β13π΄sudo-block) - Block users from running your app with root permissions.429β11π΄sparkly) - Generate sparklinesββββ ββ.18326β946π΄Bit) - Create, maintain, find and use small modules and components across repositories.1176β21π΄gradient-string) - Beautiful color gradients in terminal output.9391β341π΄oclif) - CLI framework complete with parser, automatic documentation, testing, and plugins.146β16π΄terminal-size) - Reliably get the terminal window size.366β13π΄Cliffy) - Framework for interactive CLIs.45004β1187π΄zx) - Write shell scripts JavaScript.
44029β2274π΄parcel) - Blazing fast, zero config web app bundler.65855β9205π΄webpack) - Packs modules and assets for the browser.26171β1661π΄rollup) - Next-generation ES2015 module bundler.33031β4196π΄gulp) - Streaming and fast build system that favors code over config.3333β210π΄Broccoli) - Fast, reliable asset pipeline, supporting constant-time rebuilds and compact build definitions.6771β429π΄Brunch) - Front-end web app build tool with simple declarative config, fast incremental compilation, and an opinionated workflow.3980β236π΄FuseBox) - Fast build system that combines the power of webpack, JSPM and SystemJS, with first-class TypeScript support.24423β1063π΄pkg) - Package your Node.js project into an executable.77339β7660π΄Vite) - Front-end build tool with hot module replacement and static asset bundling.
13409β1745π΄johnny-five) - Firmata based Arduino Framework.5978β1016π΄serialport) - Access serial ports for reading and writing.1638β288π΄usb) - USB library.348β58π΄i2c-bus) - I2C serial bus access.1254β123π΄onoff) - GPIO access and interrupt detection.116β16π΄spi-device) - SPI serial bus access.964β88π΄pigpio) - Fast GPIO, PWM, servo control, state change notification, and interrupt handling on the Raspberry Pi.265β62π΄gps) - NMEA parser for handling GPS receivers.709β255π΄modbus-serial) - A pure JavaScript implementation of MODBUS-RTU (serial and TCP).
14277β663π΄marko) - HTML-based templating engine that compiles templates to CommonJS modules and supports streaming, async rendering and custom tags.8858β650π΄nunjucks) - Templating engine with inheritance, asynchronous control, and more (jinja2 inspired).18554β2049π΄handlebars.js) - Superset of Mustache templates which adds powerful features like helpers and more advanced blocks.8063β852π΄EJS) - Simple unopinionated templating language.21844β1946π΄Pug) - High-performance template engine heavily influenced by Haml.
35318β2544π΄Fastify) - Fast and low overhead web framework.136873β30169π΄Next.js) - Minimalistic framework for server-rendered universal JavaScript web apps.59197β5482π΄Nuxt.js) - Minimalistic framework for server-rendered Vue.js apps.14745β1350π΄Hapi) - Framework for building applications and services.10624β452π΄Micro) - Minimalistic microservice framework with an async approach.35710β3218π΄Koa) - Framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and APIs.68468β21994π΄Express) - Web application framework, providing a robust set of features for building single and multi-page, and hybrid web applications.15235β793π΄Feathers) - Microservice framework built in the spirit of Express.5088β1067π΄LoopBack) - Powerful framework for creating REST APIs and easily connecting to backend data sources.44758β5258π΄Meteor) - An ultra-simple, database-everywhere, data-on-the-wire, pure-Javascript web framework. (You might like1419β150π΄awesome-meteor))10718β983π΄Restify) - Enables you to build correct REST web services.5292β622π΄ThinkJS) - Framework with ES2015+ support, WebSockets, REST API.2418β259π΄ActionHero) - Framework for making reusable & scalable APIs for TCP sockets, WebSockets, and HTTP clients.3959β309π΄seneca) - Toolkit for writing microservices.18548β656π΄AdonisJs) - A true MVC framework for Node.js built on solid foundations of Dependency Injection and IoC container.6360β596π΄Moleculer) - Fast & powerful microservices framework.74092β8153π΄Nest) - Angular-inspired framework for building efficient and scalable server-side apps.8090β671π΄TypeGraphQL) - Modern framework for creating GraphQL APIs with TypeScript, using classes and decorators.2873β131π΄Tinyhttp) - Modern and fast Express-like web framework.2145β73π΄Marble.js) - Functional reactive framework for building server-side apps, based on TypeScript and RxJS.2291β156π΄Lad) - Framework made by a former Express TC and Koa member that bundles web, API, job, and proxy servers.3048β291π΄Ts.ED) - Intuitive TypeScript framework for building server-side apps on top of Express.js or Koa.js.28006β886π΄Hono) - Small and fast web framework.
5804β486π΄documentation.js) - API documentation generator with support for ES2015+ and flow annotation.3568β564π΄Docco) - Documentation generator which produces an HTML document that displays your comments intermingled with your code.15386β1483π΄JSDoc) - API documentation generator similar to JavaDoc or PHPDoc.63193β9617π΄Docusaurus) - Documentation website generator that leverages React and Markdown, and comes with translation and versioning features.
1345β65π΄del) - Delete files/folders using globs.2629β135π΄globby) - Glob files with support for multiple patterns.11817β608π΄chokidar) - Filesystem watcher which stabilizes events fromfs.watchandfs.watchFileas well as using nativefseventson macOS.631β48π΄find-up) - Find a file by walking up parent directories.262β46π΄proper-lockfile) - Inter-process and inter-machine lockfile utility.247β47π΄load-json-file) - Read and parse a JSON file.223β41π΄write-json-file) - Stringify and write JSON to a file atomically.50β9π΄fs-write-stream-atomic) - Likefs.createWriteStream(), but atomic.512β28π΄filenamify) - Convert a string to a valid filename.157β17π΄istextorbinary) - Check if a file is text or binary.781β45π΄fs-jetpack) - Completely redesigned file system API for convenience in everyday use.9607β780π΄fs-extra) - Extra methods for thefsmodule.250β21π΄package-directory) - Find the root directory of an npm package.223β16π΄filehound) - Flexible and fluent interface for searching the file system.204β9π΄move-file) - Move a file, even works across devices.440β26π΄tempy) - Get a random temporary file or directory path.
- Promises
1512β69π΄pify) - Promisify a callback-style function.627β39π΄delay) - Delay a promise a specified amount of time.62β7π΄promise-memoize) - Memoize promise-returning functions, with expire and prefetch.38β4π΄valvelet) - Limit the execution rate of a promise-returning function.1471β63π΄p-map) - Map over promises concurrently.5098β138π΄Moreβ¦)
- Observables
31585β3001π΄RxJS) - Reactive programming.52β6π΄observable-to-promise) - Convert an Observable to a Promise.348β14π΄Moreβ¦)
- Streams
3488β147π΄Highland.js) - Manages synchronous and asynchronous code easily, using nothing more than standard JavaScript and Node-like Streams.
358β31π΄get-stream) - Get a stream as a string or buffer.131β21π΄from2) - Convenience wrapper for ReadableStream, inspired bythrough2.212β15π΄into-stream) - Convert a buffer/string/array/object into a stream.193β35π΄duplexify) - Turn a writeable and readable stream into a single streams2 duplex stream.256β14π΄pumpify) - Combine an array of streams into a single duplex stream.58β5π΄peek-stream) - Transform stream that lets you peek the first line before deciding how to parse it.79β19π΄binary-split) - Newline (or any delimiter) splitter stream.326β48π΄byline) - Super-simple line-by-line Stream reader.28β6π΄first-chunk-stream) - Transform the first chunk in a stream.12β6π΄pad-stream) - Pad each line in a stream.295β25π΄multistream) - Combine multiple streams into a single stream.1046β237π΄readable-stream) - Mirror of Streams2 and Streams3 implementations in core.75β11π΄through2-concurrent) - Transform object streams concurrently.
18611β1836π΄Β΅WebSockets) - Highly scalable WebSocket server & client library.62740β10141π΄Socket.io) - Enables real-time bidirectional event-based communication.4398β368π΄Faye) - Real-time client-server message bus, based on Bayeux protocol.6200β321π΄SocketCluster) - Scalable HTTP + WebSocket engine which can run on multiple CPU cores.4475β270π΄Primus) - An abstraction layer for real-time frameworks to prevent module lock-in.303β108π΄deepstream.io) - Scalable real-time microservice framework.217β11π΄Kalm) - Low-level socket router and middleware framework.8997β1441π΄MQTT.js) - Client for MQTT - Pub-sub based messaging protocol for use on top of TCP/IP.618β131π΄rpc-websockets) - JSON-RPC 2.0 implementation over WebSockets.1910β237π΄Aedes) - Barebone MQTT server that can run on any stream server.
31672β1374π΄sharp) - The fastest module for resizing JPEG, PNG, WebP and TIFF images.420β16π΄image-type) - Detect the type of an image.572β16π΄image-dimensions) - Get the dimensions of an image.2367β227π΄lwip) - Lightweight image processor which does not require ImageMagick.4003β261π΄pica) - High quality & fast resize (lanczos3) in pure JS. Alternative to canvas drawImage(), when no pixelation allowed.14573β779π΄jimp) - Image processing in pure JavaScript.8012β668π΄qrcode) - QR code and bar code generator.669β32π΄ImageScript) - Image processing in JavaScript, utilizing WebAssembly for performance.
3152β294π΄iconv-lite) - Convert character encodings.169β12π΄string-length) - Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes.698β99π΄camelcase) - Convert a dash/dot/underscore/space separated string to camelCase: foo-bar β fooBar.598β57π΄escape-string-regexp) - Escape RegExp special characters.24β8π΄splice-string) - Remove or replace part of a string likeArray#splice.115β16π΄indent-string) - Indent each line in a string.144β17π΄strip-indent) - Strip leading whitespace from every line in a string.200β25π΄detect-indent) - Detect the indentation of code.3639β261π΄he) - HTML entity encoder/decoder.3099β422π΄i18n-node) - Simple translation module with dynamic JSON storage.263β14π΄babelfish) - i18n with very easy syntax for plurals.542β30π΄matcher) - Simple wildcard matching.44β12π΄unhomoglyph) - Normalize visually similar unicode characters.8411β680π΄i18next) - Internationalization framework.26473β826π΄nanoid) - Tiny, secure, URL-friendly, unique string ID generator.3750β229π΄StegCloak) - Conceal secrets within strings, in plain sight.
89β16π΄random-int) - Generate a random integer.37β8π΄random-float) - Generate a random float.118β16π΄unique-random) - Generate random numbers that are consecutively unique.161β10π΄round-to) - Round a number to a specific number of decimal places:1.234β1.2.
1241β56π΄ndarray) - Multidimensional arrays.14972β1301π΄mathjs) - An extensive math library.17β4π΄math-clamp) - Clamp a number.108β12π΄algebra) - Algebraic structures.72β7π΄multimath) - Core to create fast image math in WebAssembly and JS.
16295β768π΄Luxon) - Library for working with dates and times.36373β1913π΄date-fns) - Modern date utility.48462β2405π΄Day.js) - Immutable date library alternative to Moment.js.1297β157π΄dateformat) - Date formatting.12β1π΄tz-format) - Format a date with timezone:2015-11-30T10:40:35+01:00.58β4π΄cctz) - Fast parsing, formatting, and timezone conversation for dates.
867β124π΄normalize-url) - Normalize a URL.252β7π΄humanize-url) - Humanize a URL: https://sindresorhus.com β sindresorhus.com.122β15π΄url-unshort) - Expand shortened URLs.1123β83π΄speakingurl) - Generate a slug from a string with transliteration.710β67π΄linkify-it) - Link patterns detector with full unicode support.589β43π΄url-pattern) - Easier than regex string matching patterns for URLs and other strings.67β6π΄embedza) - Create HTML snippets/embeds from URLs using info from oEmbed, Open Graph, meta tags.
21196β1513π΄joi) - Object schema description language and validator for JavaScript objects.966β113π΄is-my-json-valid) - JSON Schema validator that uses code generation to be extremely fast.158β9π΄property-validator) - Easy property validation for Express.503β45π΄schema-inspector) - JSON API sanitization and validation.14529β932π΄ajv) - The fastest JSON Schema validator. Supports v5, v6 and v7 proposals.7150β220π΄Superstruct) - Simple and composable way to validate data in JavaScript (and TypeScript).23672β940π΄yup) - Object schema validation.41249β1741π΄zod) - TypeScript-first schema validation with static type inference.
8672β371π΄remark) - Markdown processor powered by plugins.20881β1793π΄markdown-it) - Markdown parser with 100% CommonMark support, extensions and syntax plugins.3856β250π΄parse5) - Fast full-featured spec compliant HTML parser.7355β238π΄@parcel/css) - A CSS parser, transformer, and minifier written in Rust.622β58π΄strip-json-comments) - Strip comments from JSON.125β10π΄strip-css-comments) - Strip comments from CSS.371β38π΄parse-json) - Parse JSON with more helpful errors.6249β476π΄URI.js) - URL mutation.1934β164π΄JSONStream) - Streaming JSON.parse and stringify.327β16π΄neat-csv) - Fast CSV parser. Callback interface for the above.1486β141π΄csv-parser) - Streaming CSV parser that aims to be faster than everyone else.4912β421π΄PEG.js) - Simple parser generator that produces fast parsers with excellent error reporting.5906β344π΄x-ray) - Web scraping utility.3729β235π΄nearley) - Simple, fast, powerful parsing for JavaScript.154β4π΄binary-extract) - Extract a value from a buffer of JSON without parsing the whole thing.164β7π΄Stylecow) - Parse, manipulate and convert modern CSS to make it compatible with all browsers. Extensible with plugins.6527β795π΄js-yaml) - Very fast YAML parser.4968β610π΄xml2js) - XML to JavaScript object converter.4390β454π΄Jison) - Friendly JavaScript parser generator. It shares genes with Bison, Yacc and family.1469β154π΄google-libphonenumber) - Parse, format, store and validate phone numbers.458β141π΄ref) - Read/write structured binary data in Buffers.992β192π΄xlsx-populate) - Read/write Excel XLSX.2714β216π΄Chevrotain) - Very fast and feature rich parser building toolkit for JavaScript.2980β340π΄fast-xml-parser) - Validate and parse XML.
1284β87π΄pretty-bytes) - Convert bytes to a human readable string:1337β1.34 kB.1210β65π΄pretty-ms) - Convert milliseconds to a human readable string:1337000000β15d 11h 23m 20s.5480β286π΄ms) - Tiny millisecond conversion utility.1523β50π΄pretty-error) - Errors with less clutter.346β36π΄read-art) - Extract readable content from any page.
372β50π΄yazl) - Zip.793β78π΄yauzl) - Unzip.2930β235π΄Archiver) - Streaming interface for archive generation, supporting ZIP and TAR.6016β807π΄pako) - High speed zlib port to pure js (deflate, inflate, gzip).435β100π΄tar-stream) - Streaming tar parser and generator. Also see376β127π΄tar-fs).
921β66π΄get-port) - Get an available port.286β16π΄ipify) - Get your public IP address.358β54π΄getmac) - Get the computer MAC address.304β75π΄DHCP) - DHCP client and server.436β46π΄netcat) - Netcat port in pure JS.
- Drivers
13023β1302π΄PostgreSQL) - PostgreSQL client. Pure JavaScript and native libpq bindings.15159β1223π΄Redis) - Redis client.4081β264π΄LevelUP) - LevelDB.18817β2529π΄MySQL) - MySQL client.688β167π΄couchdb-nano) - CouchDB client.206β80π΄Aerospike) - Aerospike client.463β226π΄Couchbase) - Couchbase client.10185β1817π΄MongoDB) - MongoDB driver.
- ODM / ORM
30297β4311π΄Sequelize) - Multi-dialect ORM. Supports PostgreSQL, SQLite, MySQL, and more.6364β577π΄Bookshelf) - ORM for PostgreSQL, MySQL and SQLite3 in the style of Backbone.js.27442β3960π΄Mongoose) - Elegant MongoDB object modeling.5408β596π΄Waterline) - Datastore-agnostic tool that dramatically simplifies interaction with one or more databases.486β38π΄OpenRecord) - ORM for PostgreSQL, MySQL, SQLite3 and RESTful datastores. Similar to ActiveRecord.3548β221π΄pg-promise) - PostgreSQL framework for native SQL using promises.4874β150π΄slonik) - PostgreSQL client with strict types, detailed logging and assertions.7353β642π΄Objection.js) - Lightweight ORM built on the SQL query builder Knex.36175β6474π΄TypeORM) - ORM for PostgreSQL, MariaDB, MySQL, SQLite, and more.8751β611π΄MikroORM) - TypeScript ORM based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, PostgreSQL, MySQL and SQLite.44939β2014π΄Prisma) - Modern database access (ORM alternative). Auto-generated and type-safe query builder in TypeScript. Supports PostgreSQL, MySQL & SQLite.32118β1132π΄Drizzle ORM) - TypeScript ORM that supports various databases such as PostgreSQL.
- Query builder
20157β2184π΄Knex) - Query builder for PostgreSQL, MySQL and SQLite3, designed to be flexible, portable, and fun to use.
- Other
13564β1024π΄NeDB) - Embedded persistent database written in JavaScript.22426β956π΄Lowdb) - Small JavaScript database powered by Lodash.3067β192π΄Keyv) - Simple key-value storage with support for multiple backends.188β36π΄Finale) - RESTful endpoint generator for your Sequelize models.78β17π΄database-js) - Wrapper for multiple databases with a JDBC-like connection.564β46π΄Mongo Seeding) - Populate MongoDB databases with JavaScript and JSON files.632β48π΄@databases) - Query PostgreSQL, MySQL and SQLite3 with plain SQL without risking SQL injection.2276β106π΄pg-mem) - In-memory PostgreSQL instance for your tests.
20855β1405π΄AVA) - Futuristic test runner.22861β3060π΄Mocha) - Feature-rich test framework making asynchronous testing simple and fun.5733β365π΄nyc) - Code coverage tool built on istanbul that works with subprocesses.2401β274π΄tap) - TAP test framework.5795β304π΄tape) - TAP-producing test harness.2814β48π΄power-assert) - Provides descriptive assertion messages through the standard assert interface.347β53π΄Mochify) - TDD with Browserify, Mocha, PhantomJS and WebDriver.2111β51π΄trevor) - Run tests against multiple versions of Node.js without switching versions manually or pushing to Travis CI.2623β211π΄loadtest) - Run load tests for your web application, with an API for automation.9756β776π΄Sinon.JS) - Test spies, stubs and mocks.48β7π΄navit) - PhantomJS / SlimerJS wrapper to simplify browser test scripting.13063β752π΄Nock) - HTTP mocking and expectations.4350β305π΄intern) - Code testing stack.2721β82π΄toxy) - Hackable HTTP proxy to simulate failure scenarios and network conditions.57β12π΄hook-std) - Hook and modify stdout/stderr.174β12π΄testen) - Run tests for multiple versions of Node.js locally with NVM.11942β1411π΄Nightwatch) - Automated UI testing framework based on Selenium WebDriver.9691β2642π΄WebdriverIO) - Automated testing based on the WebDriver protocol.45233β6623π΄Jest) - Painless JavaScript testing.15624β1575π΄Vitest) - Fast unit test framework powered by Vite.9889β678π΄TestCafe) - Automated browser testing.956β102π΄abstruse) - Continuous Integration server.4212β753π΄CodeceptJS) - End-to-end testing.93185β9355π΄Puppeteer) - Headless Chrome.80723β4963π΄Playwright) - Headless Chromium, WebKit, and Firefox with a single API.708β13π΄nve) - Run any command on multiple versions of Node.js locally.6782β850π΄axe-core) - Accessibility engine for automated Web UI testing.2401β251π΄testcontainers-node) - Provides lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
540β24π΄upash) - Unified API for all password hashing algorithms.1944β155π΄themis) - Multilanguage framework for making typical encryption schemes easy to use: data at rest, authenticated data exchange, transport protection, authentication, and so on.?β?π΄GuardRails) - GitHub app that provides security feedback in pull requests.3451β182π΄rate-limiter-flexible) - Brute-force and DDoS attack protection.645β28π΄crypto-hash) - Async non-blocking hashing.66β4π΄jose-simple) - Encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
5480β332π΄Benchmark.js) - Benchmarking library that supports high-resolution timers and returns statistically significant results.
4388β220π΄babel-minify) - ES2015+ aware minifier based on the Babel toolchain.13385β1237π΄UglifyJS2) - JavaScript minifier.4203β319π΄clean-css) - CSS minifier.161β18π΄minimize) - HTML minifier.5712β261π΄imagemin) - Image minifier.
23479β1245π΄Passport) - Simple, unobtrusive authentication.4173β267π΄Grant) - OAuth providers for Express, Koa, Hapi, Fastify, AWS Lambda, Azure, Google Cloud, Vercel, and many more.
6724β294π΄CASL) - Isomorphic authorization for UI and API.2843β226π΄node-casbin) - Authorization library that supports access control models like ACL, RBAC and ABAC.
17384β1412π΄Nodemailer) - The fastest way to handle email.2206β235π΄emailjs) - Send text/HTML emails with attachments to any SMTP server.3722β338π΄email-templates) - Create, preview, and send custom email templates.17817β982π΄MJML) - Markup language designed to reduce the pain of creating responsive emails.1438β181π΄Forward Email) - Open-source and self-hostable email service.
16206β1432π΄bull) - Persistent job and message queue.9592β832π΄agenda) - MongoDB-backed job scheduling.79β10π΄idoit) - Redis-backed job queue engine with advanced job control.1407β152π΄node-resque) - Redis-backed job queue.1809β121π΄rsmq) - Redis-backed message queue.4001β222π΄bee-queue) - High-performance Redis-backed job queue.646β62π΄RedisSMQ) - Simple high-performance Redis message queue with real-time monitoring.1887β340π΄sqs-consumer) - Build Amazon Simple Queue Service (SQS) based apps without the boilerplate.545β43π΄better-queue) - Simple and efficient job queue when you cannot use Redis.8169β535π΄bullmq) - Persistent job and message queue.3243β89π΄bree) - Job task scheduler with worker threads, cron, date, and human syntax support.2096β111π΄graphile-worker) - High performance PostgreSQL job queue.
19450β765π΄n) - Node.js version management.1628β120π΄nave) - Virtual Environments for Node.js.1767β220π΄nodeenv) - Node.js virtual environment compatible to Python's virtualenv.44260β3697π΄nvm for Windows) - Version management for Windows.2350β155π΄nodenv) - Version manager that is similar to Ruby's rbenv. It supports auto version switching.23201β597π΄fnm) - Cross-platform Node.js version manager built in Rust.
7360β350π΄napi-rs) - Framework for building compiled Node.js add-ons in Rust via Node-API.8379β287π΄Neon) - Rust bindings for writing safe and fast native Node.js modules.818β102π΄Edge.js) - Run .NET and Node.js code in the same process on Windows, macOS, and Linux.750β38π΄DotNetJS) - Consume .NET libraries in Node.js using this .NET interoperability layer.
2425β93π΄retext) - An extensible natural language system.4353β182π΄franc) - Detect the language of text.733β30π΄leven) - Measure the difference between two strings using the Levenshtein distance algorithm.10864β855π΄natural) - Natural language facility.6535β634π΄nlp.js) - Building bots, with entity extraction, sentiment analysis, automatic language identify, and more.
42830β2675π΄PM2) - Advanced Process Manager.26679β1743π΄nodemon) - Monitor for changes in your app and automatically restart the server.542β52π΄node-mac) - Run scripts as a native Mac daemon and log to the console app.426β76π΄node-linux) - Run scripts as native system service and log to syslog.2925β360π΄node-windows) - Run scripts as a native Windows service and log to the Event viewer.3740β258π΄supervisor) - Restart scripts when they crash or restart when a*.jsfile changes.5067β558π΄Phusion Passenger) - Friendly process manager that integrates directly into Nginx.
12693β995π΄robotjs) - Desktop Automation: control the mouse, keyboard and read the screen.2724β175π΄nut.js) - Cross-platform native GUI automation / testing framework with image matching capabilities which integrates with Jest.
11252β997π΄Acorn) - Tiny, fast JavaScript parser.43834β5788π΄babel-parser) - JavaScript parser used in Babel.
3055β237π΄DocPad) - Static site generator with dynamic abilities and huge plugin ecosystem.30768β5845π΄docsify) - Markdown documentation site generator with no statically built HTML files.432β18π΄Charge) - Opinionated, zero-config static site generator using JSX and MDX.
9819β1247π΄KeystoneJS) - CMS and web application platform built on Express and MongoDB.4507β620π΄ApostropheCMS) - Content management system with an emphasis on intuitive front end content editing and administration built on Express and MongoDB.70835β9336π΄Strapi) - Content Management Framework (headless-CMS) to build powerful APIs.1456β112π΄Factor) - Vue.js dashboard framework and headless CMS.8858β730π΄AdminBro) - Auto-generated admin panel with CRUD for all your resources.544β28π΄Graphweaver) - CMS and headless GraphQL API.
14878β2932π΄nodeBB) - Forum platform for the modern web.
51498β11246π΄Ghost) - Simple, powerful publishing platform.41114β5029π΄Hexo) - Fast, simple and powerful blogging framework.
431β42π΄cows) - ASCII cows.394β49π΄superb) - Get superb like words.275β37π΄cat-names) - Get popular cat names.126β16π΄dog-names) - Get popular dog names.233β26π΄superheroes) - Get superhero names.119β20π΄supervillains) - Get supervillain names.1781β114π΄cool-ascii-faces) - Get some cool ascii faces.265β19π΄cat-ascii-faces) -βΛΒ·ΝΰΌΒ·ΝΛββ ΜΜΰ·β (=βΟβ=)β§ (^ο½₯oο½₯^)οΎβ.109β7π΄nerds) - Get data from nerdy topics like Harry Potter, Star Wars, and PokΓ©mon.
480β45π΄snappy) - Native bindings for Google's Snappy compression library.10468β1445π΄protobuf) - Implementation of Protocol Buffers.105β6π΄compactr) - Implementation of the Compactr protocol.
7371β245π΄execa) - Betterchild_process.29981β1680π΄cheerio) - Fast, flexible, and lean implementation of core jQuery designed specifically for the server.3429β245π΄open) - Opens stuff like websites, files, executables.957β33π΄hasha) - Hashing made simple. Get the hash of a buffer/string/stream/file.855β122π΄dot-prop) - Get a property from a nested object using a dot path.164β15π΄onetime) - Only run a function once.1146β53π΄mem) - Memoize functions - an optimization technique used to speed up consecutive function calls by caching the result of calls with identical input.112β19π΄strip-bom) - Strip UTF-8 byte order mark (BOM) from a string/buffer/stream.228β42π΄os-locale) - Get the system locale.5736β705π΄ssh2) - SSH2 client and server module.56β3π΄adit) - SSH tunneling made simple.4196β396π΄file-type) - Detect the file type of a Buffer.1961β89π΄Bottleneck) - Rate limiter that makes throttling easy.2287β147π΄webworker-threads) - Lightweight Web Worker API implementation with native threads.1889β70π΄clipboardy) - Access the system clipboard (copy/paste).1144β268π΄node-pre-gyp) - Makes it easy to publish and install Node.js C++ addons from binaries.4390β847π΄opencv) - Bindings for OpenCV. The defacto computer vision library.20202β920π΄dotenv) - Load environment variables from .env file.5373β554π΄semver) - Semantic version parser.5753β698π΄nodegit) - Native bindings to Git.21β1π΄json-strictify) - Safely serialize a value to JSON without data loss or going into an infinite loop.21401β1760π΄jsdom) - JavaScript implementation of HTML and the DOM.1751β120π΄@sindresorhus/is) - Type check values.32β2π΄env-dot-prop) - Get, set, or delete nested properties of process.env using a dot path.371β18π΄node-video-lib) - Pure JavaScript library for working with MP4 and FLV video files and creating MPEG-TS chunks for HLS streaming.701β99π΄basic-ftp) - FTP/FTPS client.408β18π΄cashify) - Currency conversion.83β9π΄genepi) - Automatically generate a native Node.js addon from C++ code.34605β1080π΄husky) - Create Git hook scripts.11060β312π΄patch-package) - Make and preserve fixes to npm dependencies.5259β353π΄editly) - Declarative video editing API.730β17π΄wild-wild-path) - Object property paths with wildcards and regexes.272β11π΄uint8array-extras) - Useful utilities for working with Uint8Array and Buffer.
- π npm - The default package manager.
- π pnpm - Disk space efficient package manager.
- π yarn - Alternative package manager.
- π bun - All-in-one toolkit for JavaScript and TypeScript apps.
104877β10681π΄Node.js Best Practices) - Summary and curation of the top-ranked content on Node.js best practices, available in multiple languages.- Nodeschool - Learn Node.js with interactive lessons.
?β?π΄The Art of Node) - An introduction to Node.js.1550β87π΄module-best-practices) - Some good practices when writing new npm modules.1499β154π΄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.1544β163π΄You Don't Know Node.js) - Introduction to Node.js core features and asynchronous JavaScript.1412β77π΄Portable Node.js guide) - Practical guide on how to write portable/cross-platform Node.js code.- π 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.
- π npms - Superb package search with deep analysis of package quality using a π myriad of metrics.
- π npm addict - Your daily injection of npm packages.
- π Error Handling in Node.js
- π Teach Yourself Node.js in 10 Steps
- π Mastering the filesystem in Node.js
- π Semver: A Primer
- π Semver: Tilde and Caret
- π Why Asynchronous?
- π Understanding the Node.js Event Loop
- π Understanding Object Streams
- π Using Express to Quickly Build a GraphQL Server
- π Node Weekly - Weekly e-mail round-up of Node.js news and articles.
- π Introduction to Node.js with Ryan Dahl
- π Hands on with Node.js
- π V8 Garbage Collector - Trash talk about the V8 garbage collector.
- π 10 Things I Regret About Node.js by Ryan Dahl - Insightful talk by the creator of Node.js about some of its limitions.
- π Mastering REST APIs in Node.js: Zero-To-Hero - Video course on how to make REST APIs using Node.js.
- π Make a vanilla Node.js REST API - Building a REST API without using a framework like Express.
- π 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? -
libuvarchitecture, thread pool, and event loop, with its source code. - π libuv Cross platform asynchronous i/o -
libuvarchitecture 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.
- π Node.js in Action
- π 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
- π Express in Action
- π Practical Modern JavaScript
- π Mastering Modular JavaScript
- π Get Programming with Node.js
- π Node.js Cookbook
- π Node.js Design Patterns
- π Node.js blog
- π webapplog.com - Blog posts on Node.js and JavaScript from the author of Practical Node.js and Pro Express.js Azat Mardan.
- π Learn to build apps and APIs with Node.js - Video course by Wes Bos.
- π Real Time Web with Node.js
- π Learn and Understand Node.js
- π Node.js Full Stack Developer Course
1354β295π΄Express.js)195β3π΄Stream FAQs) - Answering common questions about streams, covering pagination, events, and more.511β28π΄Strong Node.js) - Checklist for source code security analysis of a Node.js web service.
- π OctoLinker - Chrome extension that linkifies dependencies in package.json, .js, .jsx, .coffee and .md files on GitHub.
- π npm-hub - Chrome extension to display npm dependencies at the bottom of a repo's readme.
- π RunKit - Embed a Node.js environment on any website.
- π github-npm-stats - Chrome extension that displays npm download stats on GitHub.
- π npm semver calculator - Visually explore what versions of a package a semver range matches.
- π CodeSandbox - Online IDE and prototyping.
15995β1560π΄Amplication) - Auto-generates fully functional apps.- π RunJS - Desktop JavaScript playground.
- π Stack Overflow
- π Reddit
- π Twitter
- π Hashnode
- π Discord
- π nodebots - Robots powered by JavaScript.
743β76π΄node-module-boilerplate) - Boilerplate to kickstart creating a node module.242β13π΄modern-node) - Toolkit for creating node modules with Jest, Prettier, ESLint, and Standard.740β82π΄generator-nm) - Scaffold out a node module.2502β279π΄Microsoft Node.js Guidelines) - Tips, tricks, and resources for working with Node.js on Microsoft platforms.539β7π΄Module Requests & Ideas) - Request a JavaScript module you wish existed or get ideas for modules.2268β115π΄v8-perf) - Notes and resources related to V8 and thus Node.js performance.
4650β273π΄awesome-npm) - Resources and tips for using npm.1195β72π΄awesome-cross-platform-nodejs) - Resources for writing and testing cross-platform code.
64374β 6135π΄ sindresorhus/awesome-nodejs)