A little update: Im slowly building more things to discover and fix issues (atm, we lost about 10% performance).
I decided to take the rough idea of spacetimedb and build a database-as-server tailored to the strengths of fiberus.
Since I already have sqlite3 + io_uring vfs im using that as the storage backend. Using macros I created a little ORM for tables and reducer(rpc) calls. Everything is a table, ACID and it also has realtime subscriptions with deltas, a little auth + session/connection management and for transport/http I use my warp10 lib to enable websocket with msgpack.
Here is a little demo-app where the small vue frontend connects directly to the db. it holds no cached state. Actions are sent via reducers and updates are received via subscription delta updates:
Turns out this was easier than I initially thought and now im marvelling at the possibilities…