Sails.js
Sails.js | |
---|---|
Developer(s) | Mike McNeil and others |
Initial release | 2012 |
Repository | |
Written in | JavaScript |
Operating system | Cross-platform |
Platform | Node.js |
Type | Web framework |
License | MIT License |
Website | sailsjs |
Sails.js, or simply Sails, is the most popular MVC web application framework for Node.js, released as free and open-source software under the MIT License. It is designed to make it easy to build custom, enterprise-grade Node.js web applications and APIs.[1] Emulating the MVC architecture of other frameworks, like Ruby on Rails, it offers similar pattern and familiarity, reducing the cognitive burden when switching between other frameworks/languages.
Features
Sails.js offers a host of features and attributes. Because it is built on Node.js and Express.js, it enables applications to be built with 100% JavaScript. This not only includes models, views, and controllers; but also configuration files, adapters (e.g., database), etc.
Like Ruby on Rails, Sails.js provides an Object-relational mapping interface, using Waterline.js, which abstracts the database interaction. This enables a uniform API regardless of the underlying database being used.[2]
A number of other packages are included behind the scenes to enable fast auto-generated REST APIS, WebSockets by default using Socket.io, and compatibility features making it front-end agnostic so that many tools and frameworks (AngularJS, React.js, Android, iOS, etc) are supported.
Community Acclaim
As compared to other libraries/frameworks, like FeathersJS, Sails offers a host of features out of the box and leads as the generally accepted Node.js framework for both full-stack development and REST APIs. [3]