I did some testing with gun DB in the past, didn’t have good experience with it due to performance issues.

I don't like new event kinds. They make building a nostr client more difficult.
I'd like to build a gundb-like universal database on Nostr where you write to filesystem-like paths such as group/[id]/messages or group/[id]/name instead of defining new event kinds for everything that could expressed as a path. https://github.com/gundb/gun
Nostr is not going to be an "everything app" if you need new event kinds for everything.
I'm quite busy improving the very basic features of Iris, but I'll try to find time for it at some point.
Discussion
nostr:note1gam822lz08ae252dstr3uc6ag3xkggzun4qj95wmg3a997ww0w8qzcl3za
I also had issues with performance and reliability.
But in the old Iris which used gun, you could easily delete messages, unlike and un-repost!
And you could follow / unfollow people without rebroadcasting your whole 100 kb follows list, which might even overwrite some old version and lose follows.
With the reference gun implementation, clients would also replicate data and sync both ways by default.