Sails make it easy to build custom, enterprise-grade Node.js apps. It is designed to emulate the familiar MVC pattern of frameworks like Ruby on Rails, but with support for the requirements of modern apps: data-driven APIs with a scalable, service-oriented architecture. It's especially good for building chat, real-time dashboards, or multiplayer games; but you can use it for any web application project - top to bottom. The Sails framework was developed by Mike McNeil with the support of Treeline and Balderdash. We build real-time web apps as a service, and after much frustration with the lack of existing solutions, we created Sails to assist us in Node.js projects. Naturally, we open-sourced it. We hope it makes your life a little bit easier!

Traditional Email Support

Vice Helvetica church-key, chambray retro pickled kitsch put a bird on it quinoa art party Neutra ennui meh drinking vinegar Shoreditch.

Any Database

Sails bundles a powerful ORM, Waterline, which provides a simple data access layer that just works, no matter what database you're using.

Sails JS

Powerful associations

Sails offers a new take on the familiar relational model, aimed at making data modelling more practical.

Auto-generate REST APIs

Sails comes with blueprints that help jumpstart your app's backend without writing any code

Easy Web Socket Support

Sails translates incoming socket messages for you, they're automatically compatible with every route in your Sails app.

Reusable security policies

Sails provides basic security and role-based access control by default.

Front-end agnostic

Sails is designed to be compatible with any front-end strategy; whether it's Angular, Backbone, iOS/ObjC, Android/Java, Windows Phone, or something else entirely.

Rock-solid foundation

Sails ships with Grunt- which means your entire front-end asset workflow is completely customizable, and supports all of the great Grunt modules which are already out there.

Rock-solid foundation

Sails is built on Node.js uses Express for handling HTTP requests, and wraps for managing Web Sockets