- I'm having trouble installing Sails. What should I do?
- What are the dependencies of Sails?
- Who else is using Sails.js?
- Are there professional support options?
- Where do I get help?
- What are some good community tutorials?
- How can I convince the other girls/guys on my team?
- Where do I submit ideas? Report bugs?
- What version of Sails should I use?
- How do I get involved?
- How does the documentation end up on the Sails website?
- Where is the documentation for the different releases of Sails?
Start with NPM's helpful troubleshooting guide. If you continue to have problems, and you've tried Google searching but you're still stumped, please carefully review the updated Sails contribution guide and then create a GitHub issue in the Sails repo.
We have learned again and again over the years to take versioning of dependencies very seriously. We lock Sails's dependency versions and only bump those versions if the associated updates fix a security issue or present other substantive advantages to Sails users (improved compatibility, performance, etc.) In addition, the core maintainers of Sails are committed to fixing any major security, performance, or stability bugs that arise in any of our core dependencies-- regardless of whether those modules are officially maintained by another entity or not.
Sails is tested with node versions 0.10.x and up, though we recommend using at least Node v4.0.0. The framework is built on the rock-solid foundations of Express and Socket.io. Out of the box, it also depends on other great modules, like grunt
, waterline
, and fs-extra
. Click the badge above for the full list of dependencies in the latest stable release of Sails core.
Sails Flagship users: We manually verify every dependency of Sails and other officially-maintained modules by hand, every single week. This includes core hooks, adapters, generators, client SDKs, and Flagship packages. We regularly send security/compatibility reports about dependencies to the primary email address associated with your account. If you'd like additional people on your team to receive these reports, no problem! Just let us know their email addresses and we'll get them set up. (These email addresses will also receive communications about patches, shrinkwrap updates, and compatibility notices.)
If you have questions or concerns about our dependencies, talk to a core team member. Please do not submit a pull request changing the version of a dependency without first (1) checking that dependency's changelog, (2) verifying compatibility, and (3) submitting an accompanying PR to update roadstead, our dependency wallah.
Sails is used in production by individuals and companies, non-profits, and government entities all over the world, for all sorts of projects (greenfield and mature). You can see some examples here of companies that have used Sails for their projects. (This small list is definitely not authoritative, so if you're using Sails in your app/product/service, we'd love to hear about it!
The Sails Company offers custom development, services, training, enterprise-class products, and support for teams building applications on Sails.
Our studio provides development services for startups, SMBs, and the Fortune 500. As you might expect, the Sails core team has done a lot of custom Sails/Node.js development, but we also have experience across the full stack, including: advanced interaction design, practical/scalable JavaScript development practices for huge applications, and building rich user experiences across many different devices and screen resolutions.
We can build your app and API from scratch, modernize your legacy web platform, or catalyze the development efforts of your established team. If you're interested in working with us on your next project, drop us a line.
Sails Flagship is a platform on top of Sails which provides a suite of additional services, production-quality accoutrements, and support for enterprise use cases. This includes early access to new features and enhancements, a license for our internal tools, as well as exclusive reports and best-practice guides created by core maintainers. To learn more, set up a call (or purchase online now).
We are actively expanding this product offering with new additions and official re-releases of some formerly-experimental modules. If you have specific suggestions/requests for new Flagship packages, please let us know.
The Sails Company also provides a lifeline for organizations using Sails to build their products. If you need guaranteed support in the event of a critical production issue, or just want an extra pair of eyes looking out for your code base during development, take a look at our basic subscriptions, or contact us and we'll give you a call.
Aside from the official documentation, be sure and check out the recommended support options on the Sails website, and pop in to our Gitter chat room. If you're stumped, make sure and ask a question on StackOverflow, where there's an active Sails community. Members of our core team recently taught a free video course on Platzi and wrote a book.
If you're using Sails Flagship, you can contact the core team here.
If you are the author of a tutorial or guide about Sails, please send us a pull request here and we'll check it out. (Be sure to add your tutorial to the top of the applicable list, as we try to order these from newest to oldest.)
- The busy JavaScript developer's guide to Sails.js -- 4-part series from IBM developerWorks. (Also available in Chinese and Japanese.)
- SailsCasts - Short screencasts that take you through the basics of building traditional websites, single-page/mobile apps, and APIs using Sails. Perfect for both novice and tenured developers, but does assume some background on MVC.
- Sails API Development
- Desarrollar Webapps Realtime:
- Angular + Sails! Help! - Sails Resources Service for AngularJS
- Working With Data in Sails.js tutorial on NetTuts
- Intro to Sails.js @mikermcneil's original screencast
- If you are the author of an article about Sails, please send us a pull request here. We'll check it out!
- If you are a company interested in doing a press release about Sails, please contact @mikermcneil on Twitter. We'll do what we can to help.
- InfoWorld: Why Node.js beats Java and .Net for web, mobile, and IoT apps (Speed, scalability, productivity, and developer politics all played a role in AnyPresence’s selection of Sails.js/Node.js for its enterprise development platform)
- TechRepublic: Build Robust Applications with the Node.js MVC framework
- Microsoft Case Study: Deploying Sails.js to Azure Web Apps
- Mike's interview w/ @freddier and @cvander from Platzi
- Smashing Magazine: Sailing with Sails.js
- Presentation at Smart City Conference & Expo 2015 (George Lu & YJ Yang)
- Radio interview with Mike McNeil w/ ComputerAmerica's Craig Crossman
- Sails.js, Treeline and the future of programming (Article | Video | Deck)
- UI-First API Design & Development: Apigee's I ♥ APIs, San Francisco, 2015
- Choosing the right framework for Node.js development
- TechCrunch: Our 10 Favorite Companies From Y Combinator Demo Day
- Sails.js used on the website for the city of Paris
- 18f Open Source Hack Series: Midas
- From Rags to Open Source (All Things Open, Raleigh, 2014)
- SxSW Conference, Austin, TX: (2014 | 2015)
- More talks by Mike and the Sails.js core team
- Dessarolo Web: Interview w/ Mike McNeil (Spanish & English--English starts at 1:30)
- CapitalOne blog: Contrasting Enterprise Node.js Frameworks (by Azat Mardan, author of the book "Pro Express.js")
- Alternatives to MongoDB (Chinese article)
- Introducción a Sails.js, un framework para crear aplicaciones realtime
- Austin startup finds success in responsive design
- Interact ATX
- Intro to Sails.js :: Node.js Conf: Italy, 2014
- Startup America
- Recent tweets about Sails.js
- How to use more open source (18F is an office inside the U.s. General Services Administration that helps other federal agencies build, buy, and share efficient and easy-to-use digital services.)
- Express Web Server Advances in Node.js Ecosystem (auch auf Deutsch)
- Interview w/ Tim Heckel on InfoQ
- Sails.js - Une Architecture MVC pour applications real-time Node.js
- Hacker News
- Pulling the Plug: dotJS (Paris, 2014)
- Intro to Sails.js :: Node PDX, Portland, 2013 (Slides))
- Sail.js : un framework MVC pour Node.js
- Build Custom & Enterprise Node.js Apps with Sails.js
- New tools for web design and development: March 2013
- Sails 0.8.9: A Rails-Inspired Real-Time Node MVC Framework
- Node.js の MVCフレームワーク Sails.js が良さげなので少し試してみた
- InfoWorld: 13 fabulous frameworks for Node.js
- New web design tools that you need to check out
- Live code Sails.js avec Mike McNeil
- #hack4good adds cities and welcomes Sails.js creator to speak and hack in Paris!
- TechCrunch: Sails.js Funded by Y-Combinator
The Sails project tracks bug reports in GitHub issues and uses pull requests for feature proposals. Please read the contribution guide before you create an issue, submit a proposal, or begin working on pull request.
Unless you are a contributor running a pre-release version of the framework in order to do some testing or work on core, you should use the latest stable version of Sails from NPM (click the badge above). Installing is easy- just follow these instructions.
Note: to install/upgrade to the latest version of Sails locally in an existing project, run
npm install sails@latest --save
. If you are having trouble and are looking for a bazooka, you might also want to runrm -rf node_modules && npm cache clear && npm install sails@latest --force --save && npm install
.
If you are looking to install a pre-release version of Sails, you can install from the beta
tag on npm (i.e. npm install sails@beta
). This is a great way to try out a coming release ahead of time and start upgrading before the release becomes official. The beta npm release candidate corresponds with the beta
branch in the Sails repo. (Just be sure to also use the right version of your favorite adapters and other plugins. If in doubt, feel free to ask.)
Finally, if you like living on the edge, or you're working on adding a feature or fixing a bug in Sails, install the edge version from the master
branch on github. The edge version is not published on the registry since it's constantly under development, but you can still use npm to install it (e.g. npm install sails@git://github.com/balderdashy/sails.git
)
For more instructions on installing the beta and edge versions of Sails, check out the contribution guide.
There are many different ways to contribute to Sails; for example you could help us improve the official documentation, write a plugin, answer StackOverflow questions, start a Sails meetup, help troubleshoot GitHub issues, write some tests, or submit a patch to Sails core or one of its dependencies. Please look through the contribution guide before you get started. It's a short read that covers guidelines and best practices that ensure your hard work will have the maximum impact.
The documentation is compiled from the markdown files in the sails-docs
repo on github. A number of Sails users have expressed interest in emulating the process we use to generate the pages on the Sails website. Good news is it's pretty simple: The compilation process for the Sails docs involves generating HTML from Markdown files in the sails-docs repo, then performing some additional transformations such as adding data type bubbles, tagging permalinks for individual sections of pages, building JSON data to power the side navigation menu and setting HTML <title>
attributes for better search engine discoverability of individual doc pages. See the doc-templater module for more information.
The documentation on the main website is for the latest stable npm release of Sails, and is mirrored by the master branch of the sails-docs
repo on github (Master is sometimes a few commits ahead, but any critical documentation updates make it onto the website within a day or two.)
For older releases of Sails that are still widely used, the documentation is compiled from the relevant sails-docs
branches and hosted on the following subdomains: