$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The stack behind Flipkart Lite | Modern Web Summit
Search
Boopathi Rajaa
February 04, 2016
Programming
1
120
The stack behind Flipkart Lite | Modern Web Summit
Talk by me on "The Stack behind Flipkart Lite" @ Modern Web Summit ( Feb 4, 2016 ).
Boopathi Rajaa
February 04, 2016
Tweet
Share
More Decks by Boopathi Rajaa
See All by Boopathi Rajaa
Compiling GraphQL to be Fast
boopathi
0
95
Git Internals and Git Rebasing
boopathi
1
110
Other Decks in Programming
See All in Programming
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
0
260
認証・認可の基本を学ぼう前編
kouyuume
0
260
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
150
AIコーディングエージェント(Manus)
kondai24
0
200
Graviton と Nitro と私
maroon1st
0
110
GISエンジニアから見たLINKSデータ
nokonoko1203
0
160
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.7k
TestingOsaka6_Ozono
o3
0
170
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.3k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
180
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
160
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
230
Featured
See All Featured
Prompt Engineering for Job Search
mfonobong
0
110
Building Adaptive Systems
keathley
44
2.9k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
390
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
47k
Optimizing for Happiness
mojombo
379
70k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
63
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Site-Speed That Sticks
csswizardry
13
1k
Deep Space Network (abreviated)
tonyrice
0
16
Transcript
Modern Web Summit THE STACK BEHIND FLIPKART LITE Boopathi Rajaa
@heisenbugger
Modern Web Summit ???
Modern Web Summit We write lots of JavaScript
Modern Web Summit HTML Page Shells
Modern Web Summit Loading state (Pre data) Loaded State (Post
data) SHELL SHELL + Content
Modern Web Summit Loading state (Pre data) Loaded State (Post
data) SHELL SHELL + Content
Modern Web Summit Perceived > Actual
Modern Web Summit CLIENT SIDE ONLY SERVER SIDE RENDERING HTML
PAGE SHELLS SHELLS + SERVICE WORKERS response rendering starts
Modern Web Summit React.renderToString()
Modern Web Summit componentDidMount
Modern Web Summit /:slug/p/:itemid /(.*)/pr /search /accounts/(.*)
Modern Web Summit ReactRouter
Modern Web Summit /:slug/p/:itemid /(.*)/pr /search /accounts/(.*) /:slug/p/:itemid /(.*)/pr /search
/accounts/(.*)
Modern Web Summit function convertParams(p) { return PathUtils.injectParams(p, { splat:
'splat', slug: 'slug', itemId: 'itemId', sellerName: 'sellerName', sellerId: 'sellerId' }); } Hackity Hack Hack
Modern Web Summit Route Defined Route To Render Shell /:slug/p/:itemid
→ /slug/p/itemId → product /(.*)/pr → /splat/pr → browse /search → /search → search /accounts/(.*) → /accounts/splat → accounts injectParams
Modern Web Summit Bundle to Static assets
Modern Web Summit webpack
Modern Web Summit vendor.config.js react, react-router, phrontend, etc… client.config.js client.js
→ routes.js → root server.config.js server.js → routes.js → root hbs.config.js hbs-loader → hbs.bundle.js → <shell>.hbs sw.config.js sw.js + build props from client & vendor
Modern Web Summit Two level templating
Modern Web Summit index.hbs browse.hbs product.hbs search.hbs accounts.hbs build time
render React.renderToString() hbs-loader /:slug/p/:itemid /(.*)/pr /search /accounts/(.*) runtime - express js
Modern Web Summit client bundle app.<hash>.js main.<hash>.css sw.js sw.bundle.<hash>.js (byte
diff)
Modern Web Summit css-modules
Modern Web Summit .header { } .02jei { }
Modern Web Summit babel
Modern Web Summit phrontend github.com/flipkart-incubator/phrontend
Modern Web Summit Monorepo vs Repo per feature
Modern Web Summit Thank you Boopathi Rajaa @heisenbugger