Using offline storage is the approach I use in most of my hobby projects. It's simpler, and faster (in developing and in usage) and there are no loading screens.
In my kindle-clippings-manager (https://github.com/karlosos/kindle_clippings_webapp) I import highlights from Kindle and store them in localStorage. The major drawback is a size limitation (10MB). This should not be a problem in most cases but if you need to store more data then indexedDB (with bigger limits but more complexity) can solve the issue.
In what scenarios it would be beneficial to rewrite the Django app in Go? Do you mean something specific when saying that Go would be good replacement?. I/O heavy or computation heavy service?
Could you elaborate more on how you approached testing the applications that use tRPC? I was looking for example big projects that use tRPC but they don't have tests [0]. I am wondering what you mean by testing calls with unit tests. Have you been testing individual endpoints, e.g. `trpc.postst.getAll`, or have you been testing components that use tRPC endpoints? I would appreciate some examples.
In my kindle-clippings-manager (https://github.com/karlosos/kindle_clippings_webapp) I import highlights from Kindle and store them in localStorage. The major drawback is a size limitation (10MB). This should not be a problem in most cases but if you need to store more data then indexedDB (with bigger limits but more complexity) can solve the issue.
Linear (https://linear.app/) uses its sync engine to store the data in Web Storage. With optimistic updates, it feels like an offline app. You can read more about the sync engine here: https://news.ycombinator.com/item?id=36519448