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
160
0
Share
Realtime MVC with Sails.js
JSIST 2014
By : Serdar Doğruyol
http://jsist.org
JSIST
September 27, 2014
More Decks by JSIST
See All by JSIST
It's never too late to fight your legacy!
jsist
1
130
ES6: the future is now
jsist
0
750
Componentize all the things!
jsist
1
220
From Website to Webapp: Introducing SAFE
jsist
0
110
Hardware Development for JavaScript Developers
jsist
0
87
This is bigger than us: Building a future for Open Source
jsist
0
82
Getting Started with ClojureScript
jsist
0
120
Ember.js Framework
jsist
2
120
AngularJS Directives for D3JS: Enhancing the dynamic behavior of data visualization
jsist
0
150
Other Decks in Programming
See All in Programming
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
440
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
290
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
120
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
350
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
330
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
160
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
610
ファインチューニングせずメインコンペを解く方法
pokutuna
0
280
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
180
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
230
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Building Adaptive Systems
keathley
44
3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The Curse of the Amulet
leimatthew05
1
11k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
720
The Invisible Side of Design
smashingmag
302
51k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
So, you think you're a good person
axbom
PRO
2
2k
Utilizing Notion as your number one productivity tool
mfonobong
4
290
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