Scalable Application
Architecture
by @zacksiri
codemy.net
Things that don’t change,
a repeatable process.
Rails, Phoenix
Batteries Included, ready to go.
React JS
nothing included,
no opinions,
no conventions.
Start from Scratch
Fun / Happy
Great defaults,
DRY, Conventions
Clean Separation from
Back-end
Back-End Agnostic
1 front-end connects to
many back-ends
API
React App
Nginx / load-balancer
API API
Web Browser = 1st class
platform like iOS / Android
1. Build Tool
1 month to understand
webpack
Demo
2. Application
Architecture
• Components vs Pages
Client side routing
Folder Structure
State Management
Networking
Testing
react-router + mobx + fetch
+ jest + own experience +
own engineering
Demo
3. Animation
Web Browser = 1st class
platform like iOS / Android
Page Transitions
required smoothing
Demo
4. SEO Friendly
Important for SEO,
some apps need it.
Disagree with SSR with
the way it’s currently done
Certain limitations,
some libraries don’t work.
Doing too many things.
React is for building
User Interface, not
Machine Interface.
Proposal / How I do it
API
React App
Nginx / load-balancer
API API
API
React App / Static HTML
Nginx / load-balancer
API API
Serve React AppBot Friendly HTML
5. Repeatability
react-router 😕
mobx 👍
fetch 👍
jest 👍
own experience 😱
own engineering 😱
Extraction into collection
of libraries / framework
In the mean time,
free videos at
https://www.codemy.net/channels/re
act-foundation
Looking for React Developer
https://drivehub.co
https://drivehub.workable.com/
Thank You
codemy.net

React BKK: Scalable Application Architecture