Understand where frontend time goes.
Build one connected mental model—from navigation and browser rendering to React, memory, measurement, and sustainable performance practice.
Reason from experience to evidence.
- 01User experience
- 02Metric
- 03Browser timeline
- 04Responsible work
- 05Targeted change
- 06Verified result
From first principles to engineering practice
Priority chapters establish the first useful release. Every chapter will connect its model to measurements, interview questions, exercises, and practical investigations.
Performance reasoning
Learn what to measure, how to reason from evidence, and how to define success.
- 01Available
What frontend performance means
First releaseUser experience, perceived speed, latency, throughput, and meaningful outcomes.
- 02Planned
Measurement methodology
First releaseField and lab data, reproducible baselines, percentiles, and experimental discipline.
- 03Planned
Metrics and performance budgets
First releaseCore Web Vitals, diagnostic metrics, budgets, and the limits of aggregate scores.
Loading performance
Follow a navigation from the first request to meaningful content on screen.
- 04Planned
Navigation and network latency
DNS, connections, TLS, redirects, server response time, CDNs, compression, and caching.
- 05Planned
The critical rendering path
First releaseHTML parsing, DOM, CSSOM, render blocking, parser blocking, and progressive rendering.
- 06Planned
Resource discovery and priority
Preload scanning, request initiators, hints, priorities, waterfalls, and resource competition.
- 07Planned
JavaScript delivery
First releaseBundles, parsing, compilation, code splitting, duplicate code, hydration, and third parties.
- 08Planned
Images, fonts, and media
Responsive assets, formats, LCP discovery, font loading, dimensions, and stability.
Runtime performance
Understand how application work becomes pixels and responsive interactions.
- 09Planned
The browser rendering pipeline
First releaseStyle, layout, paint, rasterization, compositing, invalidation, and layout thrashing.
- 10Planned
The main thread and event loop
First releaseTasks, microtasks, rendering opportunities, long tasks, yielding, and workers.
- 11Planned
Interaction responsiveness and INP
Input delay, processing time, presentation delay, and responsive feedback.
- 12Planned
Animation and scrolling
Frame budgets, requestAnimationFrame, compositor work, observers, and reduced motion.
Application architecture
Connect architectural choices to loading, interaction, and maintenance costs.
- 13Planned
Rendering architecture
Client rendering, SSR, static generation, streaming, hydration, islands, and Server Components.
- 14Planned
React performance
First releaseRender and commit cost, state ownership, memoization, Compiler, transitions, and profiling.
- 15Planned
Data loading and caching
Parallel loading, deduplication, prefetching, cache layers, freshness, and invalidation.
- 16Planned
Large collections and data-heavy interfaces
DOM size, pagination, virtualization, incremental rendering, and accessibility.
Stability and memory
Keep interfaces visually stable and healthy across long-running sessions.
- 17Planned
Visual stability
Layout-shift sources, session windows, fonts, media, embeds, and post-load movement.
- 18Planned
Memory and lifecycle
Reachability, detached DOM, listeners, observers, subscriptions, caches, and heap analysis.
Performance as engineering practice
Turn individual optimizations into a sustainable team capability.
- 19Planned
Performance tooling
DevTools, Lighthouse, React profiling, bundle analysis, coverage, and choosing the right tool.
- 20Planned
Real-user monitoring
Web Vitals collection, attribution, segmentation, sampling, alerting, and release comparison.
- 21Planned
Budgets and continuous delivery
Automated checks, regression thresholds, journey tests, ownership, and escalation.
- 22Planned
Tradeoffs and communication
Prioritization, experiment design, proposals, stakeholder communication, and metric gaming.
Turn each mental model into an investigation.
Use the companion lab to trace slow loading, delayed interactions, excessive React work, layout instability, and memory growth.