Introducing local event database in Spring browser v0.8.0!
So basically, Spring will now download all your and your followers' stuff and store it locally. On app restart it will sync and download only new events. The UI, feeds etc are mostly built using events from the local database.
https://void.cat/d/2XSotQbSzY7pXLtB1GtKKR.webp
Immediate benefits of this are:
- feeds load faster on app start
- less network traffic consumed
- less CPU wasted on signature verification
But the biggest wins that a local db enables will come later:
- offline mode
- fast search among local events
- local trust rank calculation
- local algorithms
- data backups and exports
- local relay for p2p? local AI models? who knows...
Also, imagine every app running inside Spring could have access to these local events... Apps would magically start working much faster, hopefully even offline.
Right now the database is very slow and inefficient and implemented in JS and occupies the UI thread, as soon as we figure out all the interfaces and features it needs to support we'll move it to the native code - nostrdb or strfry or maybe something homegrown.
Play Store: https://play.google.com/store/apps/details?id=com.nostr.universe
APK: https://github.com/nostrband/nostr-universe/releases/download/v0.8.0/spring-nostr-browser-v0.8.0.apk