News Feed / Timeline Front-End System Design
Design a social news feed (Facebook/Instagram style) from the front-end perspective. Cover initial load, pagination/infinite scroll, virtualization, media lazy-loading, real-time updates, and smooth interactions (likes/comments) with optimistic UI. Key considerations: - Fetch strategy: initial load vs incremental pages and refresh. - Virtualized rendering to keep…
- Requirements exploration
- Architecture / High-level design
What you’ll build / What this tests
This premium front-end system design system design focuses on News Feed / Timeline Front-End System Design. You’ll apply infinite-scroll and virtualization thinking with intermediate level constraints. The prompt emphasizes Design a social news feed (Facebook/Instagram style) from the front-end perspective. Cover initial load, pagination/infinite scroll,….
Learning goals
- Decompose News Feed / Timeline Front-End System Design into front-end components, state, and data flow.
- Apply infinite-scroll, virtualization, performance constraints to a real client architecture.
- Define performance budgets and UX trade-offs for the interface.
- Plan instrumentation and resilience for user-facing failures.
Key decisions to discuss
- Choose a data model that matches UI reads and writes.
- Pick a pagination + caching strategy to keep the UI fast.
- Set performance budgets (LCP/INP) and validate with telemetry.
Evaluation rubric
- Architecture: clear client data flow and component boundaries.
- Performance: budgets + caching/virtualization where needed.
- Resilience: offline/error states and retries defined.
- Observability: metrics/logs to validate UX and perf.
Constraints / Requirements
- Design a social news feed (Facebook/Instagram style) from the front-end perspective. Cover initial load, pagination/infinite scroll,…
- Requirements exploration
- Architecture / High-level design
- Data model
- Interface definition (API)
- Optimizations and deep dive
- Assume real users and real latency; budget for perceived performance.
- Define client-side caching and invalidation strategy.
- Plan pagination or windowing for large UI lists.
- Batch UI updates and handle reconnection/backoff.
Mini snippet (architecture sketch)
Constraints:
- P95 UI response < 200ms
- 1k+ events/sec during peak
- Focus: infinite-scroll, virtualization
Components:
- Client cache + pagination
- Realtime updates (SSE/WebSocket)
- Observability + error states
Endpoints:
- GET /feed?cursor=
- POST /eventsCommon pitfalls
- Ignoring pagination/virtualization for long feeds.
- Underestimating client performance budgets.
- Overfetching data or failing to cache responses.
- Skipping failure states and retry UX.
Related questions
Upgrade to FrontendAtlas Premium to access this system design scenario. Already upgraded? Sign in to continue.