Repository metrics
- Stars
- (222 stars)
- PR merge metrics
- (PR metrics pending)
Description
I would like to implement a channels list which contains not only the channel topic and number of users, but also show things like how active the conversation is, the current mood/vibe of the channel, as well as a short summary of the channel conversation, updated periodically.
There are also other things to consider such as if I want to mark a channel as "nsfw" for example, and be able to include or filter these explicitly in results.
I have a few considerations with regards to server-side implementation:
- METADATA - By setting this information as channel METADATA we could, as a client, query each value for each channel as they are received by the client. The problem with this is that could take a while to render depending on the size of the channels list.
- Message Tags - By including values in the Message Tag body, prefixed to the 322 numeric, we can easily reference all the data we need about a channel for the list frame by frame, meaning rendering might still be a little bit slow but each result will already be fully-formed. This also means we would need to implement some custom commands to set and change the values and propagate them to the client later in some new invented format.
I think we should go for a mix of both of these for most things, i.e. a channel operator could set the channel as nsfw using METADATA, which a user won't need to subscribe to but can still be shown in the channels list via tags, or maybe something like music or channel icon/avatar which a user could subscribe to and also show in the channels list via tags.