hasura / hasura/graphql-engine

RFC: Guide to offline-first and realtime sync with Hasura

Open
#4,190 9 comments 2 reactions 0 assignees View on GitHub
k/rfc
Dominant language
TypeScript
Stars
32.1k
Forks
3k
PR merge metrics
PR metrics pending

Description

We have a tutorial for building an offline first app with RxDB & Hasura at https://hasura.io/blog/building-an-offline-first-web-app-with-rxdb-hasura/

There is also a design guide (WIP) at: https://hasura.io/blog/p/1c5079be-d19e-4fd4-b700-2a6181f3fc40/

**Demos:**
Todo App: https://rxdb-hasura-demo.netlify.com/
Trello: https://trello-offline-first.netlify.com/

**Todo:**
For our RxDB tutorial, we're looking at adding a guide and best practices around:
1. Error handling: Patterns to detect sync errors and propagate that to the user
2. How to handle initial loading of a large amount of data
3. Showcase conflict resolution with Hasura (one with postgres, and one with actions)
4. Handle data modeling on RxDB (realtional vs nosql).

There is also https://github.com/pubkey/rxdb/issues/2048 that needs to be fixed.

**What else would you like to see from an offline first & realtime sync perspective?** Comments appreciated! 🙏

Contributor guide

Open the contributing guide

Research direction

Start with the linked RxDB tutorial, WIP design guide, Todo and Trello demos, and RxDB issue #2048. Done would be a published offline-first and realtime-sync guide covering error handling, large initial loads, conflict resolution with Postgres and actions, and RxDB data modeling.

Written by the indexing model from the issue text.

Assessment

Tech stack
graphql, postgres
Domain
databases, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.