Sails.js: Difference between revisions

Content deleted Content added
Added tags to the page using Page Curation (refimprove)
m Updated non-primary sources and made some minor grammar changes (placing citations after or before the comma, which may need to be peer-reviewed)
Line 1:
{{refimprove|date=July 2017}}
 
{{Infobox Software
| name = Sails.js
Line 14 ⟶ 12:
}}
'''Sails.js''' (or '''Sails''')<ref name=":1">{{Cite book|url=https://books.google.com/books?id=hZifBAAAQBAJ&lpg=PT455&dq=Sails.js&pg=PT455#v=onepage&q=Sails.js&f=false|title=Web Development with MongoDB and Node.js|last=Krol|first=Jason|publisher=Packt|year=2014|isbn=9781783987313|___location=|pages=PT455|via=Google Books (Preview)}}</ref>, is a [[Model–view–controller|Model-View-Controller]] (MVC) [[web application framework]] developed atop the [[Node.js]] environment,<ref name=":0">{{Cite book|url=https://books.google.com/books?id=01hLDAAAQBAJ|title=Sails.js Essentials|last=Shahid|first=Shaikh|publisher=Packt|year=2016|isbn=9781783554546|___location=Birmingham, UK|pages=|oclc=944986529|via=Google Books (Preview)}}</ref>{{Rp|1, 19}} released as [[free and open-source software]] under the [[MIT License]].<ref name="SailsJS" /><ref name="NPM">{{Primarycite source inlineweb|url=https://www.npmjs.com/package/sails|title=sails|access-date=21 July 2017|publisher=npm, inc.}}</ref> It is designed to make it easy to build custom, enterprise-grade Node.js [[web application]]s and [[API]]s.<ref name="SailsJS">{{cite web|url=https://sailsjs.com|title=Sails.js {{!}} Realtime MVC Framework for Node.js|last=|first=|date=|website=|publisher=The Sails Company|archive-url=|archive-date=|dead-url=|access-date=21 July 2017}}</ref><ref>{{Primarycite sourceweb|last=Rajput|first=Mehul|title=Top inlineReasons Why Sails.js Is The Best Node.js Web Framework|dateurl=http://www.mindinventory.com/blog/top-reasons-why-sails-js-is-the-best-node-js-web-framework/|website=mindinvenory|publisher=Mindinventory|accessdate=22 July 2017|date=12 December 2016}}</ref> Emulating the MVC architecture of other frameworks, like [[Ruby on Rails]],<ref name=":0" />{{Rp|19}} 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]],<ref name="toptal">{{Citationcite neededweb|datelast1=Yang|first1=Chuoxian|title=Comparison Of Four Popular Node.js Frameworks {{!}} Toptal|url=https://www.toptal.com/nodejs/nodejs-frameworks-comparison|website=toptal|publisher=Toptal, LLC|accessdate=22 July 2017}}</ref>, it enables applications to be built with 100% JavaScript. This not only includes models, views, and controllers; but also configuration files and adapters (e.g., database).
Like Ruby on Rails,<ref name=":1" />, Sails.js provides an [[ORM|Object-relational mapping]] interface, using [[Waterline.js]], which abstracts the database interaction.<ref name="toptal"/> This enables a uniform API regardless of the underlying database being used.<ref name="WaterlineJS">{{cite web|url=http://waterlinejs.org/|title=Waterline.js home page}}</ref>
A number of other packages are included to enable fast auto-generated [[REST API]]S, [[WebSocket|WebSockets]] by default using [[Socket.io]];<ref name=":1" /> and compatibility features making it front-end agnostic so that many tools and frameworks ([[AngularJS]], [[React.js]], [[Android]], [[iOS]], etc) are supported.