~/talk

Look, Mum, No Internet - Creating great experiences with offline-first apps

Talkat droidcon London 2022 · 2022-10-27..10-28· [pwa, web-performance]
links:none on file
slides:none on file

A practical recipe for an offline‑first loyalty‑card app: store resources in a local DB, use HTTP caching headers and split large lists into per‑resource revisions so most users see content offline, mark rows with tombstones and local/backend revision hashes to avoid DB locks, synchronize changes with a background worker (e.g. WorkManager), push invalidations and payloads via FCM topic pushes, generate DTOs from a JSON schema, resolve conflicts on the server; this reduces servers, survived peak loads, and keeps UI responsive.

AI-written summary · about

  1. 0:00Introduction and Ralph
  2. 1:10Why offline first apps
  3. 3:39User experience benefits
  4. 7:35Decoupling app and backend
  5. 8:17The golden age of offline apps
  6. 10:24Adding a backend to the app
  7. 11:07Act two the backend
  8. 12:53Peak season readiness
  9. 13:34Caching headers and data consumption
  10. 16:02Slaying the monster that mutates
  11. 17:07Uploading changes to backend
  12. 18:53Downloading changes from backend
  13. 19:57Distributing backend changes
  14. 21:19Optimizing the database structure
  15. 23:04Mailman and FCM improvements
  16. 23:47Working with synced data stores
  17. 26:18Synced data store methods
  18. 27:42Building the loyalty cards screen
  19. 29:06Automatic backend synchronization
  20. 30:11Backend logic with queues
  21. 31:14Summary and benefits of offline first
~/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.