Code Monkey home page Code Monkey logo

awesome-nodejs-1's Introduction

Awesome Node.js

A curated list of astonishing Node.js frameworks, libraries and resources. Inspired by awesome-php and awesome-python.

Your pull requests are very welcome! Let's make this the awesomest resource for Node!

Environment Management

Libraries for Node version and environment management.

  • nodeenv - Virtual environment for Node.js & integrator with virtualenv.
  • nave - Virtual Environments for Node.
  • n - Node version management.
  • nvm - Node Version Manager (does not require prior installation of node).

Integrated Development Enviroments

IDEs and Editors for development

  • Enide - Node Eclipse IDE with Nodeclipse plugin.
  • InteliJIDEA - Fast Node plugin for InteliJ.
  • Webstorm - "Create great websites and applications in a great IDE. The best JavaScript IDE and HTML editor is at your service."
  • Visual Studio - With Node.js Tools for Visual Studio (Supports editing, IntelliSense, profiling, npm, TypeScript, debugging locally and remotely on Windows/MacOS/Linux)
  • Atom - The hackable editor by GitHub
  • Brackets - An open source code editor for the web, written in JavaScript, HTML and CSS.
  • Cloud9 - Web editor with collaboration tools.
  • Notepad++ - Notepad++ is a free source code editor and Notepad replacement that supports several languages.
  • CmdEr - Not really and IDE, but a great "lovely console emulator package for Windows"
  • Cloud Commander - Web file manager. Has editor and console. Allows you to develop web applications, sites etc.

Documentation

Libraries for generating project documentation.

  • Docco - Docco is a quick-and-dirty documentation generator, written in Literate CoffeeScript.
  • Groc - Documentation generation, in the spirit of literate programming.
  • dox - JavaScript documentation generator for node using markdown and jsdoc.

Package Management

Libraries for package and dependency management.

  • npm - Default package manager. Installs, publishes and manages node programs.

Build Tools

Libraries for building and task running

  • Gulp.js - A streaming build system which use of streams and code-over-configuration.
  • Grunt.js - A task runner to ease epetitive tasks like unit testing, compilation and so on.
  • Nodemon - A dev utility that monitor any changes in source and automatically restart server.

Communication

  • Socket.IO - Websocket framework for Node and Javascript.
  • SockJS - Websocket emulation.
  • Primus - An abstraction layer for real-time frameworks to prevent module lock-in.

Database Drivers

Libraries for connecting and operating databases

Debugging Tools

Tools for debugging Node applications

  • node-inspector - Node.js debugger based on Blink Developer Tools.
  • longjohn - Longer stack traces for Node.
  • TypesJs - Easy type checking, for Node & browsers.
  • Nodev - Tool for easier debugging based on nodemon and node-inspector.
  • cf-node-debug - Proxy to aid in debugging node running on a PaaS.

Logging

Tools for generating and working with log files.

  • caterpillar - A logging system that can log and pipe the output off to different locations.
  • tracer - A powerful and customizable logging library for node.js.
  • Log.io - Real time logging facility on the browser.
  • Bunyan - A simple and fast JSON logging module for node.js services.

ORM

Libraries that implement Object-Relational Mapping or datamapping techniques.

  • Sequelize - Sequelize library provides easy access to MySQL, MariaDB, SQLite or PostgreSQL databases.
  • Node-orm2 - Another Relational Object Mapper.
  • Mongoose - Almost an ORM for mongodb.

Web Frameworks

Web development frameworks.

  • Express - A minimal and flexible node.js web application framework.
  • Flatiron - An adaptable framework for building modern web applications.
  • Koa - A framework which aims to be a smaller, more expressive, and more robust foundation for web applications.
  • Totaljs - Friendly responsive design web application framework for node.
  • Meteor - A platform that has strong features such as live page update, sync and hopt code pushes.
  • Hapi - A rich framework for building applications and services.

Application Servers

Application Server is an environment to run and manage multiple applications.

  • Impress - Impressive multipurpose scalable Application Server optimized for high load API and web applications.

Content Management System

  • Calipso - Calipso is a simple CMS, built along similar themes to Drupal and Wordpress.

RESTful API

Libraries for developing RESTful APIs.

  • Sails - MVC framework which generates a RESTful JSON API.
  • Node-restify - A node.js module built specifically to build correct REST web services.
  • Heimdall - REST API Guardian for Express.

Files and MIME Type Manipulation

  • PDFKit - A JavaScript PDF generation library for Node and browser.

Authentication and OAuth

Libraries for implementing authentications schemes.

  • PassportJS - Simple authentication middleware framework.
  • ldapjs - Pure JavaScript, from-scratch framework for implementing LDAP clients and servers.

Template Engine

Libraries and tools for templating and lexing.

  • ECT - "Fastest JavaScript template engine with embedded CoffeeScript syntax" as they say (benchmark proof).
  • Jade - Handful node template engine.
  • Swig - A simple, powerful, and extendable JavaScript Template Engine.

Tools for building CLIs

Libraries and tools which support you by building Command-Line Interfaces.

  • Inquirer - A collection of common interactive command line user interfaces. Ask questions, parsing, validating answers, managing hierarchical prompts and providing error feedback.
  • commander.js - The complete solution for node.js command-line interfaces, inspired by Ruby's commander.
  • cli - Rapidly build command line apps with node.
  • cli-table - Pretty unicode tables for the CLI with Node.JS
  • blessed - A curses-like library for node.js.
  • chalk - Terminal string styling done right
  • minimist - Simple module for command line arguments parsing.
  • read - For reading user input from stdin.
  • colors.js - get colors in your node.js console like what.
  • configstore - Easily load and persist config without having to think about where and how.
  • blessed - A curses-like library for node.js.
  • log-symbols - Colored symbols for various log levels.https://github.com/sindresorhus/log-symbols
  • terminal-menu - retro ansi terminal menus for serious 80s technicolor business.
  • cli-spinner - A simple spinner for node cli.
  • text-table - generate borderless text table strings suitable for printing to stdout.

Async Control Flow

Libraries, that help you manage asyncronous control flow and avoid callback hell.

  • Callback-based:
    • Async - Utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript.
  • Promise-based (Promises/A+):
    • Q - Full-featured promise library with large API covering any situation you may encounter.
    • RSVP.js - Lightweight, but still compliant, promise library.
    • when.js - Rock solid, battle tested promise library.
    • Bluebird - Bluebird is a fully featured promise library with focus on innovative features and performance.
  • Fibers-base (node-fibers):
    • asyncawait - Inspired by C# async/await feature, implementation of the same patter using fibers.
  • Generator-based:
    • Co - Generator based flow-control goodness for nodejs and the browser.

Testing

Testing frameworks.

  • mocha - Mocha is a feature-rich JavaScript test framework running on node.js and the browser, making asynchronous testing simple and fun.
  • tape - tap-producing test harness for node and browsers.
  • should.js - BDD style assertions for node.js -- test framework agnostic.
  • chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
  • sinon - Standalone test spies, stubs and mocks for JavaScript.

Other Awesome Lists

Other amazingly awesome lists can be found in the awesome-awesome and awesome-awesomeness projects.

Contributing

Your contributions are always welcome!

awesome-nodejs-1's People

Contributors

timoweiss avatar naholyr avatar lichunqiang avatar lltwox avatar mocheng avatar tshemsedinov avatar vinz243 avatar tarzak avatar sroucheray avatar pmuellr avatar binarymax avatar manv avatar lpinca avatar emijrp avatar qcz avatar zudochkin avatar akamensky avatar bayandin avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.