Michael Perry

Camp Counselor

Jinaga: End-to-End State Management for Offline-First Web Applications

Event Logo

Tuesday, May 24, 2022 - 7:30 PM UTC, for 1 hour.

Regular, 60 minute presentation

Room: Campsite 1

JavaScript
TypeScript
React
Immutability
PWA

State management libraries like Redux make it easier to coordinate changes in all parts of your web applications. But they stop at the browser. You are still responsible for developing the API and back-end data store. Jinaga is an end-to-end state management solution. No custom API. No app-specific database. You write your model, and Jinaga takes it from there: • Local storage for offline-first web apps and PWAs • Reliable communication with delivery guarantees • Application-agnostic persistence for low-friction data evolution • Server-sent events for real-time collaboration What makes this work is a completely different approach to data management. You won't find stores, actions, and reducers. Instead, Jinaga is based on Immutable Architecture. Store the user's decisions as immutable facts. Share those decisions with other clients who express interest. And then interpret those decisions as UI updates. This does require a shift to your mental model. It won't be easy. But if you apply immutability end-to-end, you might find that many of the hard problems of collaborative web apps are no longer hard problems. Please allow me to introduce you to Jinaga.

Prerequisites

You'll get the most out of this talk with prior ReactJS experience, with or without Redux.

Take Aways

  • Model application data using immutable facts
  • Simulate mutable properties
  • Detect and resolve conflicts
  • Store data in Indexed DB for offline PWAs
favorited by:
Jake Pogorelec Michael Perry Josh Jones