Your SlideShare is downloading. ×
0
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Sails Framework Instroduction
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Sails Framework Instroduction

1,393

Published on

This is an introduction to Sails, a MVC framework to Node.js. …

This is an introduction to Sails, a MVC framework to Node.js.
It's especially good for building chat, realtime dashboards, or multiplayer games.

Published in: Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,393
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
35
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Introduction Sails is a MVC architecture for Node.js, like Django to Python or Ruby on Rails to Ruby, it has support for the more modern, data-oriented style of web app development. It's especially good for building APIs, single apps/sites, realtime features like chat, analytics dashboard and multiplayer games. Running brew install node sudo npm -g install sails sails new <appName> sails lift
  • 2. What Sails can do Socket.io / Realtime / WebSockets Supports transport agnostic routing, which allows your controllers/policies to automatically handle Socket.io / WebSocket messages. In the past, you'd have to maintain a separate code base to make that happen. Performance Built-in support for Redis session store, and Redis MQ for reverse pubsub routing. Express Supports the existing ecosystem of Express middleware. REST Blueprints Automatically generated JSON API for manipulating models Automatic route bindings for your controller actions
  • 3. Lightweight ORM Sails provides an ORM (Object Relational Mapping) called Waterline. Waterline not suports databases and associations yet, but are on the immediate todo list. Policies They can be chained together to protec or preprocess requests for controllers. E.g. authentication logic, role-based access control, file storage quotas. Support for Grunt Grunt was added in Sails v0.9. Modifying the Gruntfile you can easy add support for your favorite template engine or css/js preprocessor. Asset bundling Sails bundles support for LESS and JST Templates. Modifying your app's Gruntfile, you can add support for SASS, Handlebars, CoffeeScript, Stylus, TypeScript, etc.
  • 4. MVC structure Model has the same philosophy from other frameworks like Rails, Django, Zend. View are EJS by default, but you can set Jade, etc Controller are just Express Middleware.
  • 5. Products app example Create Product Model: sails generate product This command line create 2 files: /api/controllers/ProductController.js /api/models/Product.js Now open/edit the Product.js model.
  • 6. Product Model
  • 7. Product Controller After a controller has been defined, Sails will automatically map out routes to give you easy access. get /:controller/:id? post /:controller put /:controller/:id delete /:controller/:id /:controller/find/:id? /:controller/create /:controller/update/:id /:controller/destroy/:id Now create some products: http://localhost:1337/product/create/?name=Shoe1&description=Desc&price=20.30
  • 8. Seeing product realtime list 1. Edit app.js file to list all products: 2. Create products in other browser window and see the console.log in the http://localhost:1337:
  • 9. Next steps 1. Add MySQL support; 2. Assciate Product with Category model; 3. Choose AngularJS or Backbone.js as front-end framework.
  • 10. Currents status Community is growing fast! It can be a great full stack framework to production use soon. 3.456 starts and 339 forks on Active IRC channel; Google Group.
  • 11. Thanks! Leo Berdu @leoberdu Resources http://sailsjs.org https://groups.google.com/forum/#!forum/sailsjs http://nodejs.org/ https://github.com/joyent/node/wiki/modules#wiki-web-frameworks-full

×