awesome-nodejs
Delightful Node.js packages and resources
https://github.com/eric-erki/awesome-nodejs
Last synced: 3 days ago
JSON representation
-
Packages
-
AST
- babel-parser - JavaScript parser used in Babel.
- Acorn - Tiny, fast JavaScript parser.
-
Authentication
-
Authorization
- CASL - Isomorphic authorization for UI and API.
-
Automation
- robotjs - Desktop Automation: control the mouse, keyboard and read the screen.
-
Benchmarking
- Benchmark.js - Benchmarking library that supports high-resolution timers and returns statistically significant results.
- matcha - Simplistic approach to benchmarking.
-
Blogging
-
Build tools
- parcel - Blazing fast, zero config web app bundler.
- webpack - Packs modules and assets for the browser.
- rollup - Next-generation ES2015 module bundler.
- Broccoli - Fast, reliable asset pipeline, supporting constant-time rebuilds and compact build definitions.
- Brunch - Front-end web app build tool with simple declarative config, fast incremental compilation, and an opinionated workflow.
- Start - Functional task runner with shareable presets.
- ygor - Promising task runner for when `npm run` isn't enough and everything else is too much.
- FuseBox - Fast build system that combines the power of webpack, JSPM and SystemJS, with first-class TypeScript support.
- pkg - Package your Node.js project into an executable.
-
Command-line apps
- lessmd - Markdown in the terminal.
- np - Better `npm publish`.
- npm-name - Check whether a package name is available on npm.
- gh-home - Open the GitHub page of the repo in the current directory.
- npm-home - Open the npm page of a package.
- trash - Safer alternative to `rm`.
- speed-test - Test your internet connection speed and ping.
- emoj - Find relevant emoji from text on the command-line.
- pageres - Capture website screenshots.
- vtop - More better top, with nice charts.
- empty-trash - Empty the trash.
- is-up - Check whether a website is up or down.
- is-online - Check if the internet connection is up.
- public-ip - Get your public IP address.
- clipboard-cli - Copy & paste on the terminal.
- XO - Enforce strict code style using the JavaScript happiness style.
- Standard - JavaScript Standard Style — One style to rule them all.
- dev-time - Get the current local time of a GitHub user.
- David - Tells you when your package npm dependencies are out of date.
- http-server - Simple, zero-config command-line HTTP server.
- Live Server - Development HTTP-server with livereload capability.
- bcat - Pipe command output to web browsers.
- normit - Google Translate with speech synthesis in your terminal.
- fkill - Fabulously kill processes. Cross-platform.
- pjs - Pipeable JavaScript. Quickly filter, map, and reduce from the terminal.
- license-checker - Check licenses of your app's dependencies.
- browser-run - Easily run code in a browser environment.
- tmpin - Adds stdin support to any CLI app that accepts file input.
- wifi-password - Get the current wifi password.
- wallpaper - Change the desktop wallpaper.
- brightness - Change the screen brightness.
- torrent - Download torrents.
- kill-tabs - Kill all Chrome tabs to improve performance, decrease battery usage, and save memory.
- subdownloader - Subtitle downloader for movies and TV series.
- dark-mode - Toggle the macOS Dark Mode.
- iponmap - IP location finder.
- Jsome - Pretty prints JSON with configurable colors and indentation.
- itunes-remote - Interactively control iTunes.
- mobicon - Mobile app icon generator.
- mobisplash - Mobile app splash screen generator.
- diff2html-cli - Pretty git diff to HTML generator.
- Cash - Cross-platform Unix shell commands in pure JavaScript.
- trymodule - Try out npm packages in the terminal.
- jscpd - Copy/paste detector for source code.
- atmo - Server-side API mocking.
- auto-install - Auto installs dependencies as you code.
- cost-of-modules - Find out which dependencies are slowing you down.
- localtunnel - Expose your localhost to the world.
- svg-term-cli - Share terminal sessions via SVG.
- gtop - System monitoring dashboard for the terminal.
- themer - Generate themes for your editor, terminal, wallpaper, Slack, and more.
- carbon-now-cli - Beautiful images of your code — from right inside your terminal.
- pen - Live Markdown preview in the browser from your favorite editor.
- alex - Catch insensitive, inconsiderate writing.
- ESLint - The pluggable linting utility for JavaScript.
-
Command-line utilities
- log-symbols - Colored symbols for various log levels.
- figures - Unicode symbols with Windows CMD fallbacks.
- cross-env - Set environment variables cross-platform.
- shelljs - Portable Unix shell commands.
- chalk - Terminal string styling done right.
- meow - CLI app helper.
- yargs - Command-line parser that automatically generates an elegant user-interface.
- ora - Elegant terminal spinner.
- get-stdin - Easier stdin.
- log-update - Log by overwriting the previous output in the terminal. Useful for rendering progress bars, animations, etc.
- Ink - React for interactive command-line apps.
- listr - Terminal task list.
- conf - Simple config handling for your app or module.
- ansi-escapes - ANSI escape codes for manipulating the terminal.
- boxen - Create boxes in the terminal.
- terminal-link - Create clickable links in the terminal.
- terminal-image - Display images in the terminal.
- string-width - Get the visual width of a string - the number of columns required to display it.
- cli-truncate - Truncate a string to a specific width in the terminal.
- first-run - Check if it's the first time the process is run.
- vorpal - Interactive CLI apps.
- blessed - Curses-like library.
- Inquirer.js - Interactive command-line prompt.
- yn - Parse yes/no like values.
- cli-table3 - Pretty unicode tables.
- drawille - Draw on the terminal with unicode braille characters.
- update-notifier - Update notifications for your CLI app.
- ascii-charts - ASCII bar chart in the terminal.
- cli-cursor - Toggle the CLI cursor.
- columnify - Create text-based columns suitable for console output. Supports cell wrapping.
- cli-columns - Columnated unicode and ansi-safe text lists.
- cfonts - Sexy ASCII fonts for the console.
- multispinner - Multiple, simultaneous, individually controllable CLI spinners.
- omelette - Shell autocompletion helper.
- sudo-block - Block users from running your app with root permissions.
- loud-rejection - Make unhandled promise rejections fail loudly instead of the default silent fail.
- sparkly - Generate sparklines `▁▂▃▅▂▇`.
- Bit - Create, maintain, find and use small modules and components across repositories.
- gradient-string - Beautiful color gradients in terminal output.
- oclif - CLI framework complete with parser, automatic documentation, testing, and plugins.
- term-size - Reliably get the terminal window size.
- insight - Helps you understand how your tool is being used by anonymously reporting usage metrics to Google Analytics.
-
Compression
- yazl - Zip.
- yauzl - Unzip.
- Archiver - Streaming interface for archive generation, supporting ZIP and TAR.
- pako - High speed zlib port to pure js (deflate, inflate, gzip).
- tar-stream - Streaming tar parser and generator. Also see [tar-fs](https://github.com/mafintosh/tar-fs).
- decompress - Decompression module with support for `tar`, `tar.gz` and `zip` files out of the box.
-
Content management systems
- KeystoneJS - CMS and web application platform built on Express and MongoDB.
- ApostropheCMS - Content management system with an emphasis on intuitive front end content editing and administration built on Express and MongoDB.
- Strapi - Content Management Framework (headless-CMS) to build powerful APIs.
-
Control flow
- Bluebird - Promise library with focus on innovative features and performance.
- pify - Promisify a callback-style function.
- delay - Delay a promise a specified amount of time.
- promise-memoize - Memoize promise-returning functions, with expire and prefetch.
- valvelet - Limit the execution rate of a promise-returning function.
- p-map - Map over promises concurrently.
- More…
- zen-observable - Implementation of Observables.
- RxJS - Reactive programming.
- observable-to-promise - Convert an Observable to a Promise.
- Highland.js - Manages synchronous and asynchronous code easily, using nothing more than standard JavaScript and Node-like Streams.
- each-async - Async concurrent iterator like forEach.
- async - Provides straight-forward, powerful functions for working with asynchronicity.
- js-csp - Communicating sequential processes for JavaScript (like Clojurescript core.async, or Go).
-
Database
- PostgreSQL - PostgreSQL client. Pure JavaScript and native libpq bindings.
- Redis - Redis client.
- LevelUP - LevelDB.
- MySQL - MySQL client.
- couchdb-nano - CouchDB client.
- Aerospike - Aerospike client.
- Couchbase - Couchbase client.
- MongoDB - MongoDB driver.
- Sequelize - Multi-dialect ORM. Supports PostgreSQL, SQLite, MySQL.
- Bookshelf - ORM for PostgreSQL, MySQL and SQLite3 in the style of Backbone.js.
- Massive - PostgreSQL data access tool.
- Mongoose - Elegant MongoDB object modeling.
- Waterline - Datastore-agnostic tool that dramatically simplifies interaction with one or more databases.
- OpenRecord - ORM for PostgreSQL, MySQL, SQLite3 and RESTful datastores. Similar to ActiveRecord.
- orm2 - ORM for PostgreSQL, MariaDB, MySQL, Amazon Redshift, SQLite, MongoDB.
- pg-promise - PostgreSQL framework for native SQL using promises.
- Objection.js - Lightweight ORM built on the SQL query builder Knex.
- TypeORM - ORM for PostgreSQL, MariaDB, MySQL, SQLite, and more.
- NeDB - Embedded persistent database written in JavaScript.
- Lowdb - Small JavaScript database powered by Lodash.
- Keyv - Simple key-value storage with support for multiple backends.
- Finale - RESTful endpoint generator for your Sequelize models.
- database-js - Wrapper for multiple databases with a JDBC-like connection.
- Knex - Query builder for PostgreSQL, MySQL and SQLite3, designed to be flexible, portable, and fun to use.
-
Data validation
- joi - Object schema description language and validator for JavaScript objects.
- is-my-json-valid - JSON Schema validator that uses code generation to be extremely fast.
- property-validator - Easy property validation for Express.
- ajv - The fastest JSON Schema validator. Supports v5 proposals.
- schema-inspector - JSON API sanitization and validation.
-
Date
- Luxon - Library for working with dates and times.
- date-fns - Modern date utility.
- dateformat - Date formatting.
- tz-format - Format a date with timezone: `2015-11-30T10:40:35+01:00`.
- cctz - Fast parsing, formatting, and timezone conversation for dates.
- Moment.js - Parse, validate, manipulate, and display dates.
-
Debugging / Profiling
- ndb - Improved debugging experience, enabled by Chrome DevTools.
- ironNode - Node.js debugger supporting ES2015 out of the box.
- node-inspector - Debugger based on Blink Developer Tools.
- debug - Tiny debugging utility.
- why-is-node-running - Node.js is running but you don't know why?
- njsTrace - Instrument and trace your code, see all function calls, arguments, return values, as well as the time spent in each function.
- vstream - Instrumentable streams mix-ins to inspect a pipeline of streams.
- stackman - Enhance an error stacktrace with code excerpts and other goodies.
- locus - Starts a REPL at runtime that has access to all variables.
- 0x - Flamegraph profiling.
- ctrace - Well-formatted and improved trace system calls and signals.
- leakage - Write memory leak tests.
-
Documentation
- JSDoc - API documentation generator similar to JavaDoc or PHPDoc.
- documentation.js - API documentation generator with support for ES2015+ and flow annotation.
- ESDoc - Documentation generator targeting ES2015, attaching test code and measuring documentation coverage.
- JSDoc - API documentation generator similar to JavaDoc or PHPDoc.
- JSDoc - API documentation generator similar to JavaDoc or PHPDoc.
- Docco - Documentation generator which produces an HTML document that displays your comments intermingled with your code.
-
Email
- Nodemailer - The fastest way to handle email.
- emailjs - Send text/HTML emails with attachments to any SMTP server.
- email-templates - Create, preview, and send custom email templates.
-
Filesystem
-
Programming Languages
Categories
Sub Categories
Command-line apps
55
Command-line utilities
42
Miscellaneous
42
Database
24
Parsing
24
Mad science
19
Filesystem
19
Testing
19
Text
15
Books
15
Streams
15
Web frameworks
15
Control flow
14
HTTP
13
Debugging / Profiling
12
Build tools
9
Weird
9
Real-time
8
Hardware
8
Job queues
7
Image
7
Process management
7
URL
7
Date
6
Articles
6
Compression
6
Functional programming
6
Documentation
6
Tutorials
5
Tools
5
Community
5
Data validation
5
Network
5
Minifiers
5
Static site generators
5
Humanize
5
Math
5
Logging
5
Templating
5
Natural language processing
4
Node.js management
4
Number
4
Authentication
3
Email
3
Courses
3
Content management systems
3
Serialization
3
Newsletters
2
Videos
2
AST
2
Cheatsheets
2
Benchmarking
2
Blogging
2
Security
2
Discovery
1
Authorization
1
Forum
1
Automation
1
Blogs
1
Keywords
nodejs
115
javascript
101
node
26
cli
21
typescript
19
npm-package
17
command-line
11
http
10
json
10
postgresql
9
mysql
8
promise
8
browser
7
node-js
7
orm
6
database
6
cli-app
6
shell
6
node-module
6
stream
6
testing
6
terminal
6
react
5
framework
5
websockets
5
performance
5
api
5
sqlite
5
async
5
server
5
windows
5
css
5
static-site-generator
5
promises
5
electron
5
html
5
raspberry-pi
5
iot
5
http-client
4
network
4
serialization
4
redis
4
mongodb
4
parser
4
list
4
web
4
beaglebone-black
4
compiler
4
npm
4
webdriver
4