Skip to content

Instagram

Requirements

  • core
  • pagination
  • device

Core

Architecture

Data model

Feed Post User NewPost Image

API

composer

  • select photo from device
  • edit on photos
  • resize/crop/filter/blur
  • add caption
  • submit

  • create api for uploading and post creation yes

  • simple to implement

  • api is more complex
  • we need to wait until upload is finished

  • split

  • async

  • parallel http requests
  • clients

Optimization

  • infinite
  • virtualized lists
  • code splitting
  • Preserving feed scroll position
  • Timestamp rendering

  • image carousel

  • webp
  • alt img
  • Image loading based on device screen properties
  • Adaptive image loading based on network speed

edit

  • crop resize
  • canvas
  • filter
  • css - filter - blur/contrast/hue/b5

Accessibility

  • alt
  • aria-label for prev/next buttons(icon only buttons)

Keyboard

  • for next/prev button