Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Realtime MVC with Sails.js
Search
JSIST
September 27, 2014
Programming
0
130
Realtime MVC with Sails.js
JSIST 2014
By : Serdar Doğruyol
http://jsist.org
JSIST
September 27, 2014
Tweet
Share
More Decks by JSIST
See All by JSIST
It's never too late to fight your legacy!
jsist
1
120
ES6: the future is now
jsist
0
700
Componentize all the things!
jsist
1
190
From Website to Webapp: Introducing SAFE
jsist
0
94
Hardware Development for JavaScript Developers
jsist
0
65
This is bigger than us: Building a future for Open Source
jsist
0
72
Getting Started with ClojureScript
jsist
0
87
Ember.js Framework
jsist
2
100
AngularJS Directives for D3JS: Enhancing the dynamic behavior of data visualization
jsist
0
150
Other Decks in Programming
See All in Programming
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.3k
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
510
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
820
Team operations that are not burdened by SRE
kazatohiei
1
310
A2A プロトコルを試してみる
azukiazusa1
2
1.4k
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
530
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
110
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
730
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1k
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
680
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
760
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Music & Morning Musume
bryan
46
6.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
What's in a price? How to price your products and services
michaelherold
246
12k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Producing Creativity
orderedlist
PRO
346
40k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
Transcript
Welcome to Istanbul
Serdar Doğruyol Lead Developer @webBox @sdogruyol
http://webbox.io
<3 Ruby <3 Javascript
Gorbachev Puff Puff Thunderhorse @gorbypuff
First Let’s talk about Node
• Javascript everywhere <3 • Freaking Fast • Perfect Fit
for Realtime Apps • NPM Rocks
is GREAT
BUT
hapi meteor flatiron actionhero koa geddy socketstream express zappa ???
http
Typical Node App • Everyone tries to reinvent the wheel
• No common structure • Security problems
None
None
None
“Node on Sails for modern apps.” P.S: I’m looking at
you Ruby on Rails
Modern App? • APIs • Security • Realtime
Sails • Convention over Configuration via MVC • Seamless Realtime
powered by Socket.io • Automatic API generation via Blueprints. • Security & Access Control via Policies.
MVC • Good ol’ MVC. Just like Rails, Django, Symfony
e.g • Views are EJS by default. Can be anything you prefer ( Jade e.g)
Waterline • Totally Database Agnostic ( SQL and NoSQL) •
ORM + ODM • Same code to retrieve data from different adapters. • Easily Customizable
Realtime = Easy • WebSockets <3 • Translates incoming socket
messages to be compatible with all of your routes. • No need to have a separate code base
Blueprints • Just like Rails’ scaffolds but for APIs. •
Built-in search, sort, pagination and complex queries. • Can be protected / controlled via policies.
Policies • Reusable • Basically Express Middleware • Preprocessing or
protecting to handle requests for controllers. • Can be used for access control, authentication,request limiting or anything you can think of.
Associations • PostgreSQL + MongoDB. Seriously? • Cross-connection. Different hosts,
users, easy legact data integration, e.g join two PostgreSQL databases with different schemas.
Other Goodies • Flexible Asset Pipeline. Customizable, Grunt- based, can
be used with all the existing plugins. • Custom Generators • REPL • Internationalization
None
Thank You! @sdogruyol