awesome-node
Best Node.js tools, libraries, frameworks and resources.
https://github.com/shaikh-shahid/awesome-node
Last synced: 18 days ago
JSON representation
-
Packages
-
Security
- rate-limiter-flexible - Brute-force and DDoS attack protection.
- crypto-hash - Async non-blocking hashing.
- jose-simple - Encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
-
Serialization
-
Static site generators
- Wintersmith - Flexible, minimalistic, multi-platform static site generator.
- DocPad - Static site generator with dynamic abilities and huge plugin ecosystem.
- Charge - Opinionated, zero-config static site generator using JSX and MDX.
- Assemble - Static site generator for Node.js, Grunt.js, and Yeoman.
- Phenomic - Modern static website generator based on the React and Webpack ecosystem.
- docsify - Markdown documentation site generator with no statically built HTML files.
-
Streams
- through2 - Tiny wrapper around streams2 Transform to avoid explicit subclassing noise.
- from2 - Convenience wrapper for ReadableStream, inspired by `through2`.
- get-stream - Get a stream as a string or buffer.
- into-stream - Convert a buffer/string/array/object into a stream.
- duplexify - Turn a writeable and readable stream into a single streams2 duplex stream.
- pumpify - Combine an array of streams into a single duplex stream.
- peek-stream - Transform stream that lets you peek the first line before deciding how to parse it.
- byline - Super-simple line-by-line Stream reader.
- first-chunk-stream - Transform the first chunk in a stream.
- pad-stream - Pad each line in a stream.
- multistream - Combine multiple streams into a single stream.
- readable-stream - Mirror of Streams2 and Streams3 implementations in core.
- through2-concurrent - Transform object streams concurrently.
- binary-split - Newline (or any delimiter) splitter stream.
- stream-combiner2 - Turn a pipeline into a single stream.
-
Templating
- marko - HTML-based templating engine that compiles templates to CommonJS modules and supports streaming, async rendering and custom tags.
- nunjucks - Templating engine with inheritance, asynchronous control, and more (jinja2 inspired).
- EJS - Simple unopinionated templating language.
- Pug - High-performance template engine heavily influenced by Haml.
- handlebars.js - Superset of Mustache templates which adds powerful features like helpers and more advanced blocks.
-
Testing
- AVA - Futuristic test runner.
- Mocha - Feature-rich test framework making asynchronous testing simple and fun.
- power-assert - Provides descriptive assertion messages through the standard assert interface.
- Mochify - TDD with Browserify, Mocha, PhantomJS and WebDriver.
- loadtest - Run load tests for your web application, with an API for automation.
- Sinon.JS - Test spies, stubs and mocks.
- navit - PhantomJS / SlimerJS wrapper to simplify browser test scripting.
- intern - Code testing stack.
- toxy - Hackable HTTP proxy to simulate failure scenarios and network conditions.
- hook-std - Hook and modify stdout/stderr.
- testen - Run tests for multiple versions of Node.js locally with NVM.
- Nightwatch - Automated UI testing framework based on Selenium WebDriver.
- WebdriverIO - Automated testing based on the WebDriver protocol.
- TestCafe - Automated browser testing.
- abstruse - Continuous Integration server.
- Playwright - Headless Chromium, WebKit, and Firefox with a single API.
- nve - Run any command on multiple versions of Node.js locally.
- Puppeteer - Headless Chrome.
- nyc - Code coverage tool built on istanbul that works with subprocesses.
- trevor - Run tests against multiple versions of Node.js without switching versions manually or pushing to Travis CI.
- CodeceptJS - End-to-end testing.
- tape - TAP-producing test harness.
- Jest - Painless JavaScript testing.
- tap - TAP test framework.
-
Text
- string-length - Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes.
- camelcase - Convert a dash/dot/underscore/space separated string to camelCase: foo-bar → fooBar.
- escape-string-regexp - Escape RegExp special characters.
- execall - Find multiple RegExp matches in a string.
- splice-string - Remove or replace part of a string like `Array#splice`.
- indent-string - Indent each line in a string.
- strip-indent - Strip leading whitespace from every line in a string.
- detect-indent - Detect the indentation of code.
- he - HTML entity encoder/decoder.
- i18n-node - Simple translation module with dynamic JSON storage.
- babelfish - i18n with very easy syntax for plurals.
- matcher - Simple wildcard matching.
- unhomoglyph - Normalize visually similar unicode characters.
- i18next - Internationalization framework.
- nanoid - Tiny, secure, URL-friendly, unique string ID generator.
- iconv-lite - Convert character encodings.
-
URL
- normalize-url - Normalize a URL.
- humanize-url - Humanize a URL: http://sindresorhus.com → sindresorhus.com.
- url-unshort - Expand shortened URLs.
- speakingurl - Generate a slug from a string with transliteration.
- linkify-it - Link patterns detector with full unicode support.
- url-pattern - Easier than regex string matching patterns for URLs and other strings.
- embedza - Create HTML snippets/embeds from URLs using info from oEmbed, Open Graph, meta tags.
-
Web frameworks
- Express - Web application framework, providing a robust set of features for building single and multi-page, and hybrid web applications.
- 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.
- Hapi - Framework for building applications and services.
- Feathers - Microservice framework built in the spirit of Express.
- LoopBack - Powerful framework for creating REST APIs and easily connecting to backend data sources.
- Meteor - An ultra-simple, database-everywhere, data-on-the-wire, pure-Javascript web framework. *(You might like [awesome-meteor](https://github.com/Urigo/awesome-meteor))*
- Restify - Enables you to build correct REST web services.
- seneca - Toolkit for writing microservices.
- Hemera - Write reliable and fault-tolerant microservices with [NATS](https://nats.io).
- Fastify - Fast and low overhead web framework.
- Nest - Angular-inspired framework for building efficient and scalable server-side apps.
- Zeronode - Minimal building block for reliable and fault-tolerant microservices.
- Micro - Minimalistic microservice framework with an async approach.
- Moleculer - Fast & powerful microservices framework.
- Next.js - Minimalistic framework for server-rendered universal JavaScript web apps.
- Nuxt.js - Minimalistic framework for server-rendered Vue.js apps.
-
Weird
- cows - ASCII cows.
- superb - Get superb like words.
- cat-names - Get popular cat names.
- dog-names - Get popular dog names.
- superheroes - Get superhero names.
- supervillains - Get supervillain names.
- cat-ascii-faces - `₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ”`.
- nerds - Get data from nerdy topics like Harry Potter, Star Wars, and Pokémon.
- cool-ascii-faces - Get some cool ascii faces.
-
-
Resources
-
Articles
-
Books
- Node.js in Action
- Mixu's Node book
- Express in Action
- Practical Modern JavaScript
- Get Programming with Node.js
- Mastering Node
- Practical Node.js: Building Real-World Scalable Web Apps
- Mastering Modular JavaScript
- Node.js in Practice
- Professional Node.js: Building JavaScript Based Scalable Software
- Secure Your Node.js Web Application
- Pro Express.js
-
Cheatsheets
- Stream FAQs - Answering common questions about streams, covering pagination, events, and more.
- Strong Node.js - Checklist for source code security analysis of a Node.js web service.
- Express.js
-
Community
-
Discovery
- npmcompare.com - Compare and discover npm packages.
-
Newsletters
- Node Module Of The Week! - Weekly dose of hand picked node modules.
-
Tutorials
- Nodeschool - Learn Node.js with interactive lessons.
- 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.
- module-best-practices - Some good practices when writing new npm modules.
- You Don't Know Node.js - Introduction to Node.js core features and asynchronous JavaScript.
- Node.js Best Practices - Summary and curation of the top-ranked content on Node.js best practices, available in multiple languages.
- The Art of Node - An introduction to Node.js.
- 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.
- stream-handbook - How to write Node.js programs with streams.
- Portable Node.js guide - Practical guide on how to write portable/cross-platform Node.js code.
-
Videos
- 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.
- Nodetuts - Series of talks, including TCP & HTTP API servers, async programming, and more.
-
Programming Languages
Categories
Sub Categories
Command-line apps
53
Command-line utilities
42
Miscellaneous
40
Database
27
Testing
24
Parsing
24
Filesystem
21
Debugging / Profiling
16
Text
16
Web frameworks
16
Streams
15
Control flow
14
Books
12
HTTP
12
Real-time
10
Build tools
10
Hardware
9
Functional programming
9
Tutorials
9
Weird
9
Image
8
Job queues
8
URL
7
Date
7
Articles
7
Content management systems
7
Process management
7
Videos
6
Compression
6
Security
6
Static site generators
6
Logging
6
Natural language processing
5
Math
5
Network
5
Node.js management
5
Templating
5
Documentation
5
Humanize
5
Minifiers
5
Data validation
5
Number
4
Email
4
Serialization
3
Cheatsheets
3
AST
3
Community
3
Benchmarking
2
Authentication
2
Blogging
2
Authorization
2
Discovery
1
Forum
1
Automation
1
Newsletters
1
Keywords
nodejs
134
javascript
118
node
32
cli
26
typescript
25
npm-package
16
command-line
14
testing
11
postgresql
11
http
11
json
11
node-js
10
promise
9
mysql
9
react
8
browser
8
terminal
8
server
7
performance
7
cli-app
7
sqlite
7
shell
7
database
7
framework
7
npm
7
async
6
redis
6
static-site-generator
6
orm
6
electron
6
microservices
6
promises
6
mongodb
6
node-module
6
iot
6
chrome
6
rest
6
html
5
web
5
windows
5
test
5
raspberry-pi
5
es6
5
websockets
5
sql
5
stream
5
css
5
express
5
mocha
4
testing-tools
4