That's great! Yes I had presumed you would need some sort of template system per kind. There's just... a lot of kinds to work through! 😹
Discussion
Yeah Vinny said in his planning doc that client rendering should be generic with no knowledge of the protocol so no way around it. The templating system is broken down by category instead of kind so if you wanted to customize how kinds get displayed, you just do that in a json file. something like type: "note" -> kinds: [1,6,16]...super simple.
Yet another good argument to have UI directives as nostr events. when someone publishes a NIP, they can also publish a few UI directive events that clients like this can choose to fetch to learn how to render - no-code on the client-side.
Formstr has had UI directives as nostr events for years 🤣
Where can I learn more about that? is the formstr client the best entry point to start investigating? https://github.com/abh3po/nostr-forms
So far I've (tangentially) discovered NRPC and your example nrpc_server - both of which are extremely interesting!!
Yep nostr-forms is the client, NRPC is awesome, theres an unmerged forms NIP:
https://github.com/nostr-protocol/nips/pull/1190
I need to simplify the structure of the NIP so it doesnt scare away people, but if you leave the access control part out its fairly simple, similar to NIP-88, infect NIP-88 evolved from it.
okay yea i was looking for the NIP, just found it myself, thanks! checking it out
