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
Isomorphism in web apps
Search
jeromegn
January 27, 2014
Technology
1
88
Isomorphism in web apps
jeromegn
January 27, 2014
Tweet
Share
More Decks by jeromegn
See All by jeromegn
DocumentUp @ JSMontreal
jeromegn
1
200
Other Decks in Technology
See All in Technology
AI技術トレンド勉強会 #1MCPの基礎と実務での応用
nisei_k
1
240
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
0
150
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
29
9.5k
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
570
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
140
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
860
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
110
エンジニア向け技術スタック情報
kauche
0
110
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
280
Create a Rails8 responsive app with Gemini and RubyLLM
palladius
0
140
Amplifyとゼロからはじめた AIコーディング 成果と展望
mkdev10
1
360
CSS、JSをHTMLテンプレートにまとめるフロントエンド戦略
d120145
0
220
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Cult of Friendly URLs
andyhume
79
6.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
920
Git: the NoSQL Database
bkeepers
PRO
430
65k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
790
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Code Review Best Practice
trishagee
68
18k
A better future with KSS
kneath
239
17k
Transcript
Isomorphic web app (īsəˈmôrfik) corresponding or similar in form and
relations.
Web app reusing code, logic and functionalities in both server
and client
Current paradigms
Server-side Rendering only Client SERVER Full HTML page GET/POST/PUT/DELETE data
PJAX Client SERVER Full HTML page GET/POST/PUT/DELETE data HTML FRAGMENT
Bind HTML fragments
CLIENT-HEAVY Client SERVER HTML LAYOUT WITHOUT DATA GET/POST/PUT/DELETE data Render
HTML from templates XML/JSON
Isomorphism
Client SERVER FULL HTML Attach views & Initialize app Codebase
First load SERVER Client N+1 load DATA SERVER Client Render & bind templates
Under the hood (using AirBnb’s rendr library) First Request GET
SERVER DATA source DATA Create model Cache data RENDER VIEW CLient attach backbone.view initialize application SECOND Request GET SERVER DATA source DATA HTML DATA Cache data CLient Create backbone.view
Pros • No CORS (++consistent support) • Blazing fast first
load • Almost entirely reusable codebase (less code)
Cons • New paradigms can be hard to grasp •
New technology can be buggy • Data source (API) and server network proximity