Ah yeah that’s the same with damus, which is why I’m trying to put most of that upfront work into nostrdb. i feel a bit uncomfortable putting too much business logic into it, but the multithreaded ingester at least does content parsing, fulltext indexing, stat counting (zap amounts soon, likes, etc). Once it’s all ready the subscription is then updated for the UI.
Content is parsed into “blocks” which is also queryable and available for all notes. This was the slowest code for damus.
I want to put in all the complicated stuff that would be common in all the clients I build.
I wouldn't hardcode any specific business logic. I would just have a map in each event so that the dev can add/remove whatever they want to store together with the event. The db just stores this map in the same way it stores the event fields.
our metadata table achieves this now! you can add metadata of any type to nostrdb that is tied to a note id. currently powers our like/quote/reply counts
Thread collapsed
Thread collapsed