idk even where to start
the biggest problem of nostr is the inconsistencies of JSON codecs
with the exception of web apps and nodejs backends every case is one implementation vs another
IMO, nostr will start to mature when it uses a modern encoding and API
events, the canonical encoding, the filter and the envelope are all really ragged crappy designs that are really badly underspecified
thus, it is common at this time, to build the two things at the same time, to get the best mesh
this is the thing
when you are a programmer, you don't build the input and output separately, they are part of the same system
but that's exactly where we are