/nodejs-stuff

Node.js libs I want to keep in mind.

OtherNOASSERTION

Node.js Stuff

A continuously expanded list of Node.js libs I want to keep in mind.

Node Version Manager

  • n - Version management
  • nave - Virtual Environments for Node
  • nvm - Bash script to manage multiple versions

Development Tools

  • backpack - Minimalistic build system
  • iron-node - Debug Node.js code with Chrome Developer Tools
  • nodemon - Monitor for any changes in your application and restart the server
  • node-dev - Zero-conf reloading
  • node-inspector - Debugger based on Blink Developer Tools
  • node-supervisor - Supervisor script that runs your code, watches for changes and reloads your application
  • theseus - A debugger for Brackets

Web Application Frameworks

  • adonisjs - ES6 friendly MVC Framework
  • deployd - Toolkit for building realtime APIs
  • egg - Framework based on koa.js
  • fastify - Fast and low overhead web framework
  • nest - Framework for building efficient, reliable and scalable server-side applications
  • sails - MVC framework with auto-generated REST APIs, Web-Socket support and security policies
  • strapi - Framework with admin panel, user management and GraphQL support
  • trails - Framework with API-driven design philosophy

Process Manager

  • forever - CLI tool for ensuring that a given script runs continuously
  • naught - Zero downtime deployment
  • PM2 - Process manager for with a built-in load balancer

ORM's & ODM's

  • bookshelf - ORM for PostgreSQL, MySQL, and SQLite
  • graffiti - GraphQL ORM
  • jugglingdb - ORM/ODM for Redis, Mongo, MySQL, SQLite, PostgreSQL, neo4j and memory
  • Massive.js - A data mapper for PostgreSQL
  • mongoose - ODM for Mongo
  • mongorito - ES6 generator-based MongoDB ODM
  • moron.js - Based on knex supporting SQLite3, Postgres and MySQL
  • node-orm2 - ORM for MySQL, MariaDB, PostgreSQL, Amazon Redshift and SQLite
  • objection.js - An SQL ORM
  • prisma - Database Tools incl. ORM, Migrations and Admin UI
  • sequelize - ORM for PostgreSQL, MySQL, MariaDB, SQLite and MSSQL
  • thinky - Rethink ORM
  • waterline - ORM/ODM for MySQL, Mongo, PostgreSQL, Redis and more

File Based Databases

  • diskdb - A Lightweight Disk based JSON Database with a MongoDB like API
  • lowdb - Flat JSON file database (Lo-Dash functional programming API)
  • nedb - Embedded datastore (Mongo API)

Command Line

  • blessed - High-level widgets for the Terminal
  • blessed-contrib - Terminal dashboards using ascii/ansi
  • chalk - Terminal string styling helper
  • Clor - Civilized terminal styles
  • cmnd - Command Line Interface Utility using ES6 idioms
  • colors - Get colors in your console
  • Commander - Command-line interfaces made easy
  • Caporal.js - Full-featured framework for building command line apps
  • Inquirer - A collection of common interactive command line user interfaces
  • minimist - Parse argument options
  • Terminal Kit - Terminal utilities
  • vantage - An interactive CLI for Node
  • vorpal - Framework for interactive CLI apps.
  • yargs - Optstrings parser

Scraper & Crawler

  • crawler - Web Crawler/Spider + server-side jQuery
  • ineed - Web scraping and HTML-reprocessing
  • noodlejs - Server and module for querying and scraping data from web documents
  • node-osmosis - HTML/XML parser and web scraper for NodeJS
  • scrape-it - A scraping module for humans
  • scraperjs - A complete and versatile web scraper
  • skrap - Easily scrap web pages by providing json recipes
  • SUq - Scraping Utility
  • x-ray - See through the noise
  • yakuza - Highly scalable scraping framework

Data Parser/Converter

  • any-json - Convert csv, xls, xlsx, xml, yaml and more to JSON
  • BabyParse - CSV parser based on PapaParse
  • dsv - A parser and formatter for DSV (CSV and TSV) files
  • exceljs - Excel Workbook Manager
  • node-csv - Full featured CSV parser

Fake Data & Mocking

  • chance - Minimalist generator of random strings, numbers and more
  • faker - Generate massive amounts of fake data
  • fake identity - Generate random identity objects including name, address, etc
  • nock - HTTP mocking and expectations library

Geo & Mapping

Authentication

  • darklord - Stateless Authentication Server - JWT based authentication
  • drywall - A website and user system
  • everyauth - Authentication and authorization (password, facebook, & more)
  • frame - A user system API based on hapi
  • node-oauth2-server - Complete, compliant and well tested module for implementing an OAuth2 Server/Provider
  • passport - Simple, unobtrusive authentication
  • passwordless - Module to authenticate users without password

Validation

  • is.js - Micro check library
  • joi - Object schema validation
  • validator.js - String validation and sanitization

Security

  • Credential - Password hashing and verification
  • CSRF - CSRF protection middleware
  • Helmet - Middleware to help secure your Express/Connect apps
  • NodeSecurity - The Node Security Project

Headless Browser

  • casperjs - Navigation scripting & testing utility for PhantomJS and SlimerJS
  • nightmarejs - A high level wrapper for Phantomjs
  • phantomjs - Headless WebKit scriptable with a JavaScript API
  • puppeteer - Headless Chrome Node.js API
  • slimerjs - Scriptable browser based on Gecko

Internationalization

  • i18n - Lightweight simple translation module
  • i18n-abide - connect module for i18n and l10n support
  • Jed - Gettext Style i18n
  • messageformat - MessageFormat for Javascript - i18n Plural and Gender Capable Messages
  • polyglot.js - Give your JavaScript the ability to speak many languages

General

  • cheerio - Implementation of core jQuery for the server
  • del - Delete files/folders using globs
  • fortune - A framework for prototyping hypermedia APIs
  • fs-extra - Extra methods for the fs object