Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
Microservices rules: What good looks like
cer
PRO
0
1.5k
Python札幌 LT資料
t3tra
4
730
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
2
220
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
120
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
9
5.8k
sbt 2
xuwei_k
0
300
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
840
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
190
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
370
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
140
JETLS.jl ─ A New Language Server for Julia
abap34
1
420
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
RailsConf 2023
tenderlove
30
1.3k
Balancing Empowerment & Direction
lara
5
810
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
84
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Docker and Python
trallard
47
3.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Fireside Chat
paigeccino
41
3.7k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Code Reviewing Like a Champion
maltzj
527
40k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
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