Modern, powerful web application framework for Node.js.
Description
Nest is a powerful web framework for Node.js, which helps you effortlessly build efficient, scalable applications. It uses modern JavaScript, is built with TypeScript and combines best concepts of both OOP (Object Oriented Progamming) and FP (Functional Programming).
It is not just another framework. You do not have to wait for a large community, because Nest is built with awesome, popular well-known libraries - Express and socket.io! It means, that you could quickly start using framework without worrying about a third party plugins.
Installation
$ npm install nest.js
Philosophy
JavaScript is awesome. This language is no longer just a trash to create simple animations in the browser. Right now, the front end world is rich in variety of tools. We have a lot of amazing frameworks / libraries such as Angular, React or Vue, which improves our development process and makes our applications fast and flexible.
Node.js gave us a possibility to use this language also on the server side. There are a lot of superb libraries, helpers and tools for node, but non of them do not solve the main problem - the architecture.
We want to create scalable, modern and easy to maintain applications. Nest helps us with it.
Features
- Reactive microservices support with messages patterns (transport via TCP / Redis)
- Compatible with both TypeScript and ES6 (I strongly recommend to use TypeScript)
- Based on well-known libraries (Express / socket.io) so you could share your experience
- Easy to learn - syntax is similar to Angular / Spring (Java)
- Dependency Injection, built-in Inversion of Control container
- Exceptions handler layer (helps to focus on logic)
- Own modularity system (split your system into reusable modules)
- WebSockets module (based on socket.io)
- Testing utilities
Documentation & Quick Start
Documentation & Tutorial
Starter repos
Future
Nest is very much still a work in progress. There is still some things to finish:
- Examples(!)
- Exception filters
- Validation helpers
- Gateways middleware
- and more...
People
Author - Kamil Myśliwiec
License
MIT