📜 ⬆️ ⬇️

20 useful Node.js frameworks

In recent years, Node.js has significantly increased its status from experimental technology to the basis for serious projects. Node.js allows you to build quite complex, high-loaded applications on a simple, elegant and, most importantly, lightweight mechanism. But above all, Node.js is an absolutely fascinating and exciting thing, which is really interesting to work with!


Node.js is an event-driven I / O infrastructure for the V8 JavaScript engine on UNIX-like platforms. Cross-platform and open source Node.js, it will give developers all the necessary tools to create network and server applications on the fly, while allowing you to write all the code in JavaScript, regardless of the operating system.

Perhaps the biggest feature of Node.js is the NPM package manager, which allows Node.js developers to connect to a library with more than 220,000+ unique modules that can be easily used to start building applications, platforms and software.

Node.js officially downloaded over 90,000,000 times. Node.js has certainly won the hearts and minds of web developers, but it can also be used in other areas, such as working with robots, drones, and other interesting things.
')
Below we will look at 20 Node.js frameworks for web development. Let's go to the list!

Express


Express is a minimalistic and flexible web framework for Node.js applications, providing an extensive set of features for mobile and web applications.

Express, as is well known, develops its own way, unlike other frameworks that rely largely on Rails, but also borrowed a lot from another Ruby framework called Sinatra. The concept is simple: the framework provides enough opportunities to run and work on the fly, without requiring much preparation time.

This is a framework that makes creating most sites very simple. The first thing you need to do is install it. Together with the node command you will have the npm command. This tool gives you access to a huge number of modules created by the community, and Express is just one of them.

→ Development example on Express.

Official website

Meteor


Meteor is an open source MVC framework with which you can create real-time Web applications. One of the most important features of the platform is that it allows you to use the same code on the server side as well as on the client side. Between the server and the client, as a rule, data is transmitted, and not HTML code. The framework supports OS X, Windows and Linux. His reactive programming model allows you to create applications using less JavaScript code.

An example of development on Meteor.

Official website

MEAN


MEAN (an abbreviation for MongoDB, Express.js, Angular.js, Node.js) is a set (complex) of server software that, like LAMP, is used for web development. At the client, server, and database levels, the entire MEAN stack is written in JavaScript. The shift of the base platform from the OS (Linux) to the JavaScript runtime (Node.js) brings with it independence from the OS: Node.js runs on Windows and OS X in the same way as on Linux.

The main shift between LAMP and MEAN is the transition from the traditional generation of pages on the server side to the orientation to single-page applications (SPA) on the client side.

An example of development on MEAN.

Official website

Flatiron


Flatiron is a full-stack framework that allows developers to create desktop and mobile applications with reusable components. The main features of the framework include: built-in template system, plug-in management system and much more.

Official website

Locomotive


Locomotive positions itself as one of the most powerful Node.js frameworks, thanks to its support for the MVC pattern and REST principles, as well as trouble-free work with Express. Locomotive is well integrated with databases and templating systems, which forces developers to return to this extensive framework time after time.

Official website

Total


Total.js, for no apparent reason, is one of the most forgotten Node.js frameworks, Total.js is a large and rich framework, it provides great opportunities for developers. It supports friendly URLs, XHR, JSON, LESS CSS (CSS 3), javascript minimizer, XSS protection, resources, modules, and also supports MVC architecture.

This framework has no dependencies. All functionality is located in its core. You can install any module using the Node Package Manager. The only noticeable disadvantage is the performance in comparison with the same Express.js.

Official website

Koa


The Express.js framework team has created another framework called Koa.js - the next-generation futuristic framework for Node.js, which promises to be more concise and bright in comparison with Express.js. Koa.js focuses on creating web applications and APIs, its main advantage is generators, which are a great way to avoid callbacks, as well as helping developers fix bugs.

Official website

Hapi


A less well-known framework developed by the Walmart Labs team. Unlike Express and Restify, it has a slightly different approach, providing more functionality right out of the box. The advantages include full control over the reception of requests and detailed help with the generation of documentation.

Official website

Diet


Diet.js is a very small modular Node.js framework for building fast and scalable APIs and applications. You can use a host controller to manage multiple hosts, a router to create clean APIs and URLs, the software allows you to expand your applications and APIs with modules. Despite the fact that the framework is very easy, it brings maximum results, as well as you will have access to the source code, which will allow you to become a contributor whenever you want.

Official website

Compound


Compound.js is one of the most reliable MVC frameworks that allows developers to build applications on the fly. Compound also has good community support and extensive documentation.

Compound has borrowed a lot from Ruby on Rails, since this framework provides similar logical expressions and ways of thinking. On the net, you can find many tutorials on how to build full-fledged applications on Compound.js and RESTful API interfaces for those who need just a quick API solution. Amazon AWS also provides Node.js + Compound.js integration .

Official website

Geddy


Geddy is a very interesting framework from the Github user mde. Its features: modularity, clear code and automatic generation of application templates. There is integration with socket.io and passportjs built-in authorization module. Creating a reliable, real-time Geddy.JS application requires only a few commands. In general, the framework provides a fairly large set of commands that work through the command line interface and allow you to automate most routine tasks, such as creating a model, controller, view, and even setting up authentication, socket.io integration. Thus, Geddy will allow the developer to focus on the core logic of the application.

Official website

Sails


Sails.js is an MVC framework that allows you to quickly and easily create Node.js applications. Sails.js is best suited for creating real-time applications. It is based on the MVC pattern (Model-View-Controller), like Ruby On Rails, but also supports the requirements of modern applications: program interfaces with a scalable, service-oriented architecture. This framework is particularly well suited for designing chat rooms, real-time dashboards and multiplayer games.

Official website

Adonis


Adonis is a real MVC framework for Node.js with the right base. It carries the concept of service providers from the popular PHP framework Laravel to create large-scale applications, and to use all the features of ES6 to make your code more accurate and supported.

Official website

Rhapsody


The main core of Rhapsody.js is supported by the Express.js framework. Rhapsody helps developers create RESTful APIs for models, the framework supports sockets, and also provides a wide range of unique features that can be used in a real-time development environment. Works with all databases.

Official website

Strapi


Instead of focusing on building the application infrastructure, Strapi helps you focus on creating logic that can be reused. The framework is an excellent solution for those software developers who want to build applications within a few days (or hours), rather than spending weeks on structuring and designing.

Strapi was created using the framework Koa.js. It consists of 100% JavaScript.

The security issue at Strapi has been given special attention, the framework comes with several security layers that only work according to your needs.

Official website

SocketStream


Socketstream is a framework for Node.js that allows you to create single-page web applications that run in real time.

Data between the server and the client is transmitted in asynchronous mode via web sockets as high-speed bidirectional RPC calls, which allows you to create truly fast web applications with ultra-responsiveness. Read more here.

Official website

Mojito


Mojito is a JavaScript web framework that allows you to write programs for the client and server side. With Mojito, developers no longer have to write different codes for backend and frontend. If JavaScript is not enabled in the browser, the Mojito application will still be executed on the server side, using the same code.

Official website

Catberry


Catberry.js is a framework for developing isomorphic JavaScript applications on node.js using modular architecture and fast rendering mechanisms. This framework allows you to write an application module once and use it both on the server for rendering pages for search robots, and in the browser for a single-page application, requesting only data for templates. Read more here.

Official website

Seneca


Seneca is unique in our list of Node.js frameworks, because, in fact, it is a set of tools that works like a framework. Seneca will give you access to a number of plugins that will help you keep the very foundation of the application you are creating. And this functionality allows you to focus on more important aspects of the application. Seneca will take care of things like databases, components and dependencies, so all you have to do is just write code. Seneca supports commands, so whenever your application finds an appropriate value, it will invoke the appropriate command to help you complete tasks. Intel, CoderDojo, GSD and other equally well-known companies actively use the advantages of Seneca.

Official website

Actionhero


ActionHero is one of the most well-known API frameworks. It will help you quickly develop scalable and reusable Node.js API servers for your projects. ActionHero acts as a toolkit that will allow you to build such API servers that will initially work together with existing applications and platforms. With tens of thousands of users, you can always find the right answers and ideas to ensure your daily, efficient workflow with ActionHero.

Official website

Nodal


Nodal.js is a specially created web server for Node.js developers. This is a full-stack framework that makes it easier to make tough decisions and gives space to create sustainable products in a much shorter period of time than usual. Those who use Heroku can deploy their Nodal servers with a few mouse clicks.

The framework is new, but has already received a lot of support from veterans who have used frameworks like Django.

Official website

I hope this collection will be useful to you. If you do not find your favorite framework in the list, mention it in the comment.

Source: https://habr.com/ru/post/316244/


All Articles