From 2882da0805ed92d80bb9d53a73b3247236581657 Mon Sep 17 00:00:00 2001 From: Sindre Sorhus Date: Mon, 16 Dec 2019 22:13:54 +0100 Subject: [PATCH] Add mention of GitHub Sponsors --- readme.md | 65 +++++++------------------------------------------------ 1 file changed, 8 insertions(+), 57 deletions(-) diff --git a/readme.md b/readme.md index 4845176..68effec 100644 --- a/readme.md +++ b/readme.md @@ -3,6 +3,7 @@ Awesome Node.js
+

Special thanks to:
@@ -11,11 +12,12 @@ Botpress
-

- - and - -

+ Botpress is an open-source conversational assistant creation platform. +
+ They welcome contributions from anyone, whether you're into machine learning,
want to get started in open-source, or just have an improvement idea.
+
+
+
Segment @@ -24,6 +26,7 @@ Save time setting up analytics with Segment. We're hiring!

+



@@ -37,7 +40,6 @@
- ## Contents - [Packages](#packages) @@ -103,7 +105,6 @@ - [Community](#community) - [Miscellaneous](#miscellaneous) - ## Packages ### Mad science @@ -131,7 +132,6 @@ - [xlsx](https://github.com/sheetjs/js-xlsx) - Pure JS Excel spreadsheet reader and writer. - [isomorphic-git](https://github.com/isomorphic-git/isomorphic-git) - Pure JavaScript implementation of Git. - ### Command-line apps - [np](https://github.com/sindresorhus/np) - Better `npm publish`. @@ -195,7 +195,6 @@ - [discharge](https://github.com/brandonweiss/discharge) - Easily deploy static websites to Amazon S3. - [npkill](https://github.com/voidcosmos/npkill) - Easily find and remove old and heavy node_modules folders. - ### Functional programming - [lodash](https://github.com/lodash/lodash) - Utility library delivering consistency, customization, performance, & extras. A better and faster Underscore.js. @@ -208,7 +207,6 @@ - [Lazy.js](https://github.com/dtao/lazy.js) - Utility library similar to lodash/Underscore but with lazy evaluation, which can translate to superior performance in many cases. - [Kefir.js](https://github.com/kefirjs/kefir) - Reactive library with focus on high performance and low memory usage. - ### HTTP - [got](https://github.com/sindresorhus/got) - Nicer interface to the built-in `http` module. @@ -226,7 +224,6 @@ - [gotql](https://github.com/khaosdoctor/gotql) - GraphQL request library built on [got](https://github.com/sindresorhus/got). - [global-agent](https://github.com/gajus/global-agent) – Global HTTP/HTTPS proxy agent that is configurable using environment variables. - ### Debugging / Profiling - [ndb](https://github.com/GoogleChromeLabs/ndb) - Improved debugging experience, enabled by Chrome DevTools. @@ -245,7 +242,6 @@ - [thetool](https://github.com/sfninja/thetool) - Capture different CPU, memory, and other profiles for your app in Chrome DevTools friendly format. - [swagger-stats](https://github.com/slanatech/swagger-stats) - Trace API calls and monitor API performance, health, and usage metrics. - ### Logging - [pino](https://github.com/pinojs/pino) - Extremely fast logger inspired by Bunyan. @@ -254,7 +250,6 @@ - [storyboard](https://github.com/guigrpa/storyboard) - End-to-end, hierarchical, real-time, colorful logs and stories. - [signale](https://github.com/klauscfhq/signale) - Hackable console logger with beautiful output. - ### Command-line utilities - [chalk](https://github.com/chalk/chalk) - Terminal string styling done right. @@ -301,7 +296,6 @@ - [term-size](https://github.com/sindresorhus/term-size) - Reliably get the terminal window size. - [Cliffy](https://github.com/drew-y/cliffy) - Framework for interactive CLIs. - ### Build tools - [parcel](https://github.com/parcel-bundler/parcel) - Blazing fast, zero config web app bundler. @@ -315,7 +309,6 @@ - [FuseBox](https://github.com/fuse-box/fuse-box) - Fast build system that combines the power of webpack, JSPM and SystemJS, with first-class TypeScript support. - [pkg](https://github.com/zeit/pkg) - Package your Node.js project into an executable. - ### Hardware - [johnny-five](https://github.com/rwaldron/johnny-five) - Firmata based Arduino Framework. @@ -327,7 +320,6 @@ - [pigpio](https://github.com/fivdi/pigpio) - Fast GPIO, PWM, servo control, state change notification, and interrupt handling on the Raspberry Pi. - [gps](https://github.com/infusion/GPS.js) - NMEA parser for handling GPS receivers. - ### Templating - [marko](https://github.com/marko-js/marko) - HTML-based templating engine that compiles templates to CommonJS modules and supports streaming, async rendering and custom tags. @@ -336,7 +328,6 @@ - [EJS](https://github.com/mde/ejs) - Simple unopinionated templating language. - [Pug](https://github.com/pugjs/pug) - High-performance template engine heavily influenced by Haml. - ### Web frameworks - [Hapi](https://github.com/hapijs/hapi) - Framework for building applications and services. @@ -360,7 +351,6 @@ - [Zeronode](https://github.com/sfast/zeronode) - Minimal building block for reliable and fault-tolerant microservices. - [TypeGraphQL](https://github.com/19majkel94/type-graphql) - Modern framework for creating GraphQL APIs with TypeScript, using classes and decorators. - ### Documentation - [documentation.js](https://github.com/documentationjs/documentation) - API documentation generator with support for ES2015+ and flow annotation. @@ -368,7 +358,6 @@ - [Docco](https://github.com/jashkenas/docco) - Documentation generator which produces an HTML document that displays your comments intermingled with your code. - [JSDoc](https://github.com/jsdoc3/jsdoc) - API documentation generator similar to JavaDoc or PHPDoc. - ### Filesystem - [del](https://github.com/sindresorhus/del) - Delete files/folders using globs. @@ -393,7 +382,6 @@ - [move-file](https://github.com/sindresorhus/move-file) - Move a file, even works across devices. - [tempy](https://github.com/sindresorhus/tempy) - Get a random temporary file or directory path. - ### Control flow - Promises @@ -417,7 +405,6 @@ - Channels - [js-csp](https://github.com/ubolonton/js-csp) - Communicating sequential processes for JavaScript (like Clojurescript core.async, or Go). - ### Streams - [through2](https://github.com/rvagg/through2) - Tiny wrapper around streams2 Transform to avoid explicit subclassing noise. @@ -436,7 +423,6 @@ - [readable-stream](https://github.com/nodejs/readable-stream) - Mirror of Streams2 and Streams3 implementations in core. - [through2-concurrent](https://github.com/almost/through2-concurrent) - Transform object streams concurrently. - ### Real-time - [µWebSockets](https://github.com/uWebSockets/uWebSockets) - Highly scalable WebSocket server & client library. @@ -450,7 +436,6 @@ - [rpc-websockets](https://github.com/elpheria/rpc-websockets) - JSON-RPC 2.0 implementation over WebSockets. - [Aedes](https://github.com/mcollina/aedes) - Barebone MQTT server that can run on any stream server. - ### Image - [sharp](https://github.com/lovell/sharp) - The fastest module for resizing JPEG, PNG, WebP and TIFF images. @@ -462,7 +447,6 @@ - [probe-image-size](https://github.com/nodeca/probe-image-size) - Get the size of most image formats without a full download. - [qrcode](https://github.com/soldair/node-qrcode) - QR code and bar code generator. - ### Text - [iconv-lite](https://github.com/ashtuchkin/iconv-lite) - Convert character encodings. @@ -482,7 +466,6 @@ - [i18next](https://github.com/i18next/i18next) - Internationalization framework. - [nanoid](https://github.com/ai/nanoid) - Tiny, secure, URL-friendly, unique string ID generator. - ### Number - [random-int](https://github.com/sindresorhus/random-int) - Generate a random integer. @@ -490,7 +473,6 @@ - [unique-random](https://github.com/sindresorhus/unique-random) - Generate random numbers that are consecutively unique. - [round-to](https://github.com/sindresorhus/round-to) - Round a number to a specific number of decimal places: `1.234` → `1.2`. - ### Math - [ndarray](https://github.com/scijs/ndarray) - Multidimensional arrays. @@ -499,7 +481,6 @@ - [algebra](https://github.com/fibo/algebra) - Algebraic structures. - [multimath](https://github.com/nodeca/multimath) - Core to create fast image math in WebAssembly and JS. - ### Date - [Luxon](https://github.com/moment/luxon) - Library for working with dates and times. @@ -510,7 +491,6 @@ - [tz-format](https://github.com/samverschueren/tz-format) - Format a date with timezone: `2015-11-30T10:40:35+01:00`. - [cctz](https://github.com/floatdrop/node-cctz) - Fast parsing, formatting, and timezone conversation for dates. - ### URL - [normalize-url](https://github.com/sindresorhus/normalize-url) - Normalize a URL. @@ -521,7 +501,6 @@ - [url-pattern](https://github.com/snd/url-pattern) - Easier than regex string matching patterns for URLs and other strings. - [embedza](https://github.com/nodeca/embedza) - Create HTML snippets/embeds from URLs using info from oEmbed, Open Graph, meta tags. - ### Data validation - [joi](https://github.com/hapijs/joi) - Object schema description language and validator for JavaScript objects. @@ -530,7 +509,6 @@ - [schema-inspector](https://github.com/Atinux/schema-inspector) - JSON API sanitization and validation. - [ajv](https://github.com/epoberezkin/ajv) - The fastest JSON Schema validator. Supports v5, v6 and v7 proposals. - ### Parsing - [remark](https://github.com/wooorm/remark) - Markdown processor powered by plugins. @@ -558,7 +536,6 @@ - [Chevrotain](https://github.com/SAP/chevrotain) - Very fast and feature rich parser building toolkit for JavaScript. - [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) - Validate and parse XML. - ### Humanize - [pretty-bytes](https://github.com/sindresorhus/pretty-bytes) - Convert bytes to a human readable string: `1337` → `1.34 kB`. @@ -567,7 +544,6 @@ - [pretty-error](https://github.com/AriaMinaei/pretty-error) - Errors with less clutter. - [read-art](https://github.com/Tjatse/node-readability) - Extract readable content from any page. - ### Compression - [yazl](https://github.com/thejoshwolfe/yazl) - Zip. @@ -577,7 +553,6 @@ - [tar-stream](https://github.com/mafintosh/tar-stream) - Streaming tar parser and generator. Also see [tar-fs](https://github.com/mafintosh/tar-fs). - [decompress](https://github.com/kevva/decompress) - Decompression module with support for `tar`, `tar.gz` and `zip` files out of the box. - ### Network - [get-port](https://github.com/sindresorhus/get-port) - Get an available port. @@ -586,7 +561,6 @@ - [DHCP](https://github.com/infusion/node-dhcp) - DHCP client and server. - [netcat](https://github.com/roccomuso/netcat) - Netcat port in pure JS. - ### Database - Drivers @@ -620,7 +594,6 @@ - [database-js](https://github.com/mlaanderson/database-js) - Wrapper for multiple databases with a JDBC-like connection. - [Mongo Seeding](https://github.com/pkosiec/mongo-seeding) - Populate MongoDB databases with JavaScript and JSON files. - ### Testing - [AVA](https://github.com/avajs/ava) - Futuristic test runner. @@ -648,7 +621,6 @@ - [Puppeteer](https://github.com/GoogleChrome/puppeteer) - Headless Chrome. - [nve](https://github.com/ehmicky/nve) - Run any command on multiple versions of Node.js locally. - ### Security - [upash](https://github.com/simonepri/upash) - Unified API for all password hashing algorithms. @@ -658,13 +630,11 @@ - [crypto-hash](https://github.com/sindresorhus/crypto-hash) - Async non-blocking hashing. - [jose-simple](https://github.com/davesag/jose-simple) — Encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard. - ### Benchmarking - [Benchmark.js](https://github.com/bestiejs/benchmark.js) - Benchmarking library that supports high-resolution timers and returns statistically significant results. - [matcha](https://github.com/logicalparadox/matcha) - Simplistic approach to benchmarking. - ### Minifiers - [babili](https://github.com/babel/babili) - ES2015+ aware minifier based on the Babel toolchain. @@ -673,19 +643,16 @@ - [minimize](https://github.com/Swaagie/minimize) - HTML minifier. - [imagemin](https://github.com/imagemin/imagemin) - Image minifier. - ### Authentication - [Passport](https://github.com/jaredhanson/passport) - Simple, unobtrusive authentication. - [Grant](https://github.com/simov/grant) - OAuth middleware for Express, Koa, and Hapi. - ### Authorization - [CASL](https://github.com/stalniy/casl) - Isomorphic authorization for UI and API. - [node-casbin](https://github.com/casbin/node-casbin) - Authorization library that supports access control models like ACL, RBAC and ABAC. - ### Email - [Nodemailer](https://github.com/andris9/Nodemailer) - The fastest way to handle email. @@ -693,7 +660,6 @@ - [email-templates](https://github.com/niftylettuce/email-templates) - Create, preview, and send custom email templates. - [MJML](https://github.com/mjmlio/mjml) - Markup language designed to reduce the pain of creating responsive emails. - ### Job queues - [bull](https://github.com/OptimalBits/bull) - Persistent job and message queue. @@ -706,7 +672,6 @@ - [sqs-consumer](https://github.com/bbc/sqs-consumer) - Build Amazon Simple Queue Service (SQS) based apps without the boilerplate. - [better-queue](https://github.com/diamondio/better-queue) - Simple and efficient job queue when you cannot use Redis. - ### Node.js management - [n](https://github.com/tj/n) - Node.js version management. @@ -715,7 +680,6 @@ - [nvm for Windows](https://github.com/coreybutler/nvm-windows) - Version management for Windows. - [nodenv](https://github.com/nodenv/nodenv) - Version manager that is similar to Ruby's rbenv. It supports auto version switching. - ### Natural language processing - [retext](https://github.com/wooorm/retext) - An extensible natural language system. @@ -724,7 +688,6 @@ - [natural](https://github.com/NaturalNode/natural) - Natural language facility. - [nlp.js](https://github.com/axa-group/nlp.js) - Building bots, with entity extraction, sentiment analysis, automatic language identify, and more. - ### Process management - [PM2](https://github.com/Unitech/pm2) - Advanced Process Manager. @@ -735,19 +698,16 @@ - [supervisor](https://github.com/petruisfan/node-supervisor) - Restart scripts when they crash or restart when a `*.js` file changes. - [Phusion Passenger](https://github.com/phusion/passenger) - Friendly process manager that integrates directly into Nginx. - ### Automation - [robotjs](https://github.com/octalmage/robotjs) - Desktop Automation: control the mouse, keyboard and read the screen. - ### AST - [Acorn](https://github.com/ternjs/acorn) - Tiny, fast JavaScript parser. - [babel-parser](https://github.com/babel/babel/tree/master/packages/babel-parser) - JavaScript parser used in Babel. - [cherow](https://github.com/cherow/cherow) - JavaScript parser with focus on performance and stability. - ### Static site generators - [Wintersmith](https://github.com/jnordberg/wintersmith) - Flexible, minimalistic, multi-platform static site generator. @@ -757,7 +717,6 @@ - [docsify](https://github.com/QingWei-Li/docsify) - Markdown documentation site generator with no statically built HTML files. - [Charge](https://github.com/brandonweiss/charge) - Opinionated, zero-config static site generator using JSX and MDX. - ### Content management systems - [KeystoneJS](https://github.com/keystonejs/keystone) - CMS and web application platform built on Express and MongoDB. @@ -765,18 +724,15 @@ - [Strapi](https://github.com/strapi/strapi) - Content Management Framework (headless-CMS) to build powerful APIs. - [Tipe](https://github.com/tipeio/tipe) - Developer-first content management system with GraphQL and REST API from a schema file. - ### Forum - [nodeBB](https://github.com/NodeBB/NodeBB) - Forum platform for the modern web. - ### Blogging - [Ghost](https://github.com/TryGhost/Ghost) - Simple, powerful publishing platform. - [Hexo](https://github.com/hexojs/hexo) - Fast, simple and powerful blogging framework. - ### Weird - [cows](https://github.com/sindresorhus/cows) - ASCII cows. @@ -789,14 +745,12 @@ - [cat-ascii-faces](https://github.com/melaniecebula/cat-ascii-faces) - `₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ”`. - [nerds](https://github.com/SkyHacks/nerds) - Get data from nerdy topics like Harry Potter, Star Wars, and Pokémon. - ### Serialization - [snappy](https://github.com/kesla/node-snappy) - Native bindings for Google's Snappy compression library. - [protobuf](https://github.com/dcodeIO/protobuf.js) - Implementation of Protocol Buffers. - [compactr](https://github.com/compactr/compactr.js) - Implementation of the Compactr protocol. - ### Miscellaneous - [execa](https://github.com/sindresorhus/execa) - Better `child_process`. @@ -836,7 +790,6 @@ - [node-video-lib](https://github.com/gkozlenko/node-video-lib) - Pure JavaScript library for working with MP4 and FLV video files and creating MPEG-TS chunks for HLS streaming. - [basic-ftp](https://github.com/patrickjuchli/basic-ftp) – FTP/FTPS client. - ## Resources ### Tutorials @@ -944,13 +897,11 @@ - [Microsoft Node.js Guidelines](https://github.com/Microsoft/nodejs-guidelines) - Tips, tricks, and resources for working with Node.js on Microsoft platforms. - [Module Requests & Ideas](https://github.com/sindresorhus/module-requests) - Request a JavaScript module you wish existed or get ideas for modules. - ## Related lists - [awesome-npm](https://github.com/sindresorhus/awesome-npm) - Resources and tips for using npm. - [awesome-cross-platform-nodejs](https://github.com/bcoe/awesome-cross-platform-nodejs) - Resources for writing and testing cross-platform code. - ## License [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)