~/talk

The Bumpy Road to Universal JavaScript

Talkat JSCamp 2018 · on Friday, 2018-07-20· [react, frontend-architecture]

A working example evolves a single‑page random fox images app into server‑rendered, hydrated pages using Express, React, Babel and webpack multi-compiler builds for browser and node. Data fetching moves from componentDidMount to a static appFetchData/getInitialProps API so the server renders final HTML, then serializes state to window with XSS-safe escaping for rehydration. Practical fixes include code‑splitting, anchor‑based navigation, streaming HTML via stream-template, asset manifest and method‑override middleware.

AI-written summary · about

  1. 0:00Intro
  2. 0:49Journey preparations
  3. 2:19Performance
  4. 3:31Error resilience
  5. 5:32Let's start the journey
  6. 7:18webpack BABEL
  7. 9:05The node-browser gap
  8. 12:39The client-server gap
  9. 15:04Data fetching
  10. 18:33State dehydration and rehydration
  11. 20:50The uncanny valley
  12. 25:12Response streaming
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.