Skip to content

rx007/sails

 
 

Sails.js logo

![Gitter](https://badges.gitter.im/Join Chat.svg) NPM version

Sails.js is a web framework that makes it easy to build custom, enterprise-grade Node.js apps. It is designed to resemble the MVC architecture from frameworks like Ruby on Rails, but with support for the more modern, data-oriented style of web app development. It's especially good for building realtime features like chat.

Installation  

With node installed:

# Get the latest stable release of Sails
$ sudo npm install sails -g

######Upgrading from 0.10 or 0.11? The v0.12 release of Sails contains a few breaking changes which affect userland. To read the v0.12 migration guide, click here.

Your First Sails Project

Create a new app:

# Create the app
$ sails new testProject

Lift sails:

# cd into the new folder
$ cd testProject

# fire up the server
$ sails lift

Generate a REST API:

ScreenShot

Compatibility

Sails is built on Node.js, Connect, Express, and Socket.io.

Sails controllers are compatible with Connect middleware, so in most cases, you can paste code into Sails from an existing Express project and everything will work-- plus you'll be able to use WebSockets to talk to your API, and vice versa.

The ORM, Waterline, has a well-defined adapter system for supporting all kinds of datastores. Officially supported databases include MySQL, PostgreSQL, MongoDB, SQLite3, Redis, local disk, and local memory. Community adapters exist for CouchDB, neDB, TingoDB, SQLite, Oracle, MSSQL, DB2, ElasticSearch, Riak, neo4j, OrientDB, Amazon RDS, DynamoDB, Azure Tables, RethinkDB and Solr; for various 3rd-party REST APIs like Quickbooks, Yelp, and Twitter, including a configurable generic REST API adapter; plus some eclectic projects.

Powered by MySQL                                

Books

Support

Need help or have a question?

Issue Submission

Please read the issue submission guidelines before opening a new issue.

Sails is composed of a number of different sub-projects, many of which have their own dedicated repository. If you suspect an issue in one of these sub-modules, you can find its repo on the organization page, or in MODULES.md. Click here to search/post issues in this repository.

Feature Requests

If you have an idea for a new feature, please feel free to submit it as a pull request to the backlog section of the ROADMAP.md file in this repository.

Contribute

There are many different ways you can contribute to Sails:

Please carefully read our contribution guide and check the master branch build status before submitting a pull request with code changes.

Links