-
Notifications
You must be signed in to change notification settings - Fork 634
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bulletin Boards #1815
base: master
Are you sure you want to change the base?
Bulletin Boards #1815
Conversation
Love the idea, currently for a nostr client I'm building, I'm using NIP-7D and NIP-22 to create the same effect, but honestly I much prefer your approach due to the use of replaceable events. Just one minor tweak, I believe that boards should be allowed to have parent boards, allowing for sub-categorization, such as for example:
We could achieve this by having an "e" tag in the 30891, what do you think about that? |
Can't we solve it with a way to parse the category? Maybe Making things recursive really complicates things. |
Maybe something like this would work? {
"kind": 30890,
"tags": [
["d", "<unique_board_identifier>"],
["name", "<board_name>"],
["summary", "<short summary for preview>"]
["image", "<optional_image_url>"],
["relay", "wss://"], // home relay
["relay", "wss://"], // mirror relay
["forum", "<30891:pubkey:dTag>", "<level1>"], // forum
["forum", "<30891:pubkey:dTag>", "<level1>", "<level2>"], // forum
["forum", "<30891:pubkey:dTag>", "<level1>", "<level2>", "<level3>"], // forum
["forum", "<30891:pubkey:dTag>", "<level1>", "<second_level2>"], // forum
["forum", "<30891:pubkey:dTag>", "<second_level1>"] // forum
],
"content": "<board_description and rules>"
} |
Why not use NIP 29 groups as boards? Particularly since content moderation is to be implemented using relay moderation tools. That would solve permissions etc as well. At least use 7D and 22 for threads/replies. |
That's the goal but without any of the other stuff like chats or hierarchical threads. That's why 7D and 22 really don't fit the usual concept of a board. |
You don't have to show everything in a room, just like you don't have to show everything in a relay. Just ignore chats and kind 1s etc, that's what flotilla does for the chat rooms. |
That's the goal for the new events. To show just one board with a few given forums. Then ignore chats, kind1s, and the usual threads with NIP-22. I am also using new kinds to use Markdown, since NIP-22 and NIP-29 native kinds need to use plain text. |
What does this mean? Doesn't a board exist within a forum?
That's the goal with 7D too. It even enforces that replies must not be nested.
This fixation on using markdown vs the markdown subset we defined in #1800 is only going to result in two versions of everything. |
Board is the BB site. It has categories and inside each category forums. Inside the forum, people can start threads and reply.
I just noticed that. We need to decide if the scope can change how NIP-22 behaves or not. I would expect any client that implements NIP-22 but not NIP-7D to just reply as usual there, breaking NIP-7D. Right now for instance, Amethyst is breaking NIP-7D because it always replies to NIP-22 in the NIP-22 style, regardless of scope. |
I see. This is inverted from how I used the terms growing up, but I see both terminologies are used in the wild. A nice source of ambiguity for people to argue over.
I suppose it would probably make sense to create a new comment kind that MUST not comment on a comment. It breaks flotilla, but that's not the end of the world. |
another kind to create a global view, FAQ, presentation stuff for each site, maybe just the boring stuff from the forums policy and other |
Frankly, I am not expecting/wanting this to show on Flotilla and Chachi. These are for bulletin boards, not for Slack/Discord clients. Vastly different things that should be kept separate on purpose. |
Flotilla is not a chat client, it's a community client. This may include chat, or it may include forum posts. It's arbitrary to dictate what should be combined. I mean, look at Amethyst, it doesn't stay in its kind 1 lane by any means. |
Yep, I don't mind you integrating it and I will integrate them too in Amethyst, but the purpose of this NIP is to create a very specialized system, not a broader/more generic "community client". |
My point is they're very nearly identical in terms of functionality, just structured differemtly. This is a "multiple ways to do the same thing" scenario. The difference is in how that thing is done (forum events vs nip 29 groups, kinds, markdown, how relays are selected). I'd like to avoid duplicating stuff if we can. But go ahead and fork if you think the differences are worth breaking interop. I'll continue to use 7D. |
Everything is nearly identical in functionality to each other on Nostr. Video kinds and Picture kinds are essentially NIP-94 kinds, which are essentially Kind1 posts. NIP-22 kinds are Kind 1 replies. Live chats on streams, NIP-28 and NIP-29 chats are virtually the same. Labels, reports, and polls are essentially Reactions with minor functional differences. This idea that function is what defines a NIP is wrong. NIPs are defined by their application, by their UI/UX, because these minor functional differences make or break the applications themselves. |
Similarly, supporting markdown with or without tables is a minor functional difference. But it makes or breaks applications that need tables to operate. If we fix a given syntax in a kind, that application will need to create a new kind to support the extra features it wants, even though it is just a minor difference. There is no option to use the existing kind. Shortly thereafter, there will be another app that needs tables + footnotes and we will need to then define a new kind that offers tables + footnotes because without it that new app cannot exist. Even though it's all just a very minor difference. |
What if you called this nip Dev Board? |
Is it just for devs? I wasn't thinking about them, but I am open to it. |
I don't like the name Dev Board personally, it's too specific and bulletin boards are used by more than just developers |
A simple scheme for boards and threads to be used with a NIP-29 relay.
Read: here