Threads in Group Chats

I wish that in DC I can have streams for different topics inside a group.

I want to avoid to have a very long chat history or to create several very similar groups because another topic needs to be discussed as it makes the chat list very long. With some kind of hierarchy one can quicker navigate to the things relevant.

I really like how Zulip organises conversations.
On Zulip it is very easy to structure topics in different streams, so one does not get lost if a lot of messages comes in or different topics need to be discussed. (also new members have optionally the possibility to read the history of a stream in a very clear form).


I also really dig zulip, and i think that delta could improve on the concepts of streams and tags if we think it through.

Discord also has a thread feature, but i am not so crazy about the details of the implementation.

If we start with adding the possibility to tag messages, then i think that we could use tags to organize the overall display hierarchy without enforcing an actual hierarchy.

Technically it should be quite doable - perhaps via a similar message mechanism as the message2.disposition-notification.

1 Like

I recently discovered the “Space” Feature of Matrix/Element. It allows one to organise the appearance of groups individually (and this structure is shareable/proposable , in case the other members wants to adapt to it.)
That is also a quite nice feature.

1 Like

So my thoughts for now are that there are several ways that a “thread” may be defined and displayed:

  1. Traditional Reply Based Threads
  2. Tag based
  3. Special Tag based (similar to Gitlab scoped::labels)
  4. Possibly a nested mixture of the above (but only if UX doesn’t get tooooo hairy)

i like very much the idea to have opt in and sharable restructuring

1 Like

@Jikstra (Jikstra) Talking about the threaded mode, I think we all want it, the big question is how. What is your opinion on how to do it? The questions that arised before for us where: reddit/mailinglist like threading or only 2 level (like telegram/zulip). Also, should replies get hidden from the main “stream” or displayed? When you switch to the threaded view, shall it switch to a specific view that only displays this stream/thread or shall it show arrow buttons to jump to the previous/next reply? from github#2538

amazing questions… some of my thoughts above… more tomorrow…

a little bit related to tags:
in desktop you can already click on #hashtags and it opens a search for that #hashtag

1 Like

So a bit of a vision for flexible thread rendering:

No hard coded hierarchy
Configurable independently for each client and each conversation
Options for threading:

  • time based like it is now
  • reply based - most recent reply in a thread is rendered at the bottom, with a disclosure arrow to expand the earlier messages from the thread upwards
  • tag based - choose top level and sub level tags to use as rendering groupings (advantage over reply based is that it can be organized later by adding tags)
  • if it isn’t too complex, it may be cool to support a tag as a top level thread organizer and then render in reply mode within each tag group
1 Like

I too am wanting threading in groups. This would allow a substantial group to discuss multiple topics without creating new groups or all the info being lost in one long list of multiple discussions.

Delta is amazing already … but could replace almost all communication services (forums, blogs, Slack, Telegram, etc.) with just a few additions. Grouping groups and threading are two of the needed functions at the top of my list.

1 Like

Threads don’t really fit in a chat group in my opinion, but rather in a forum like this.
I’m not a developer but maybe it’s possible to develop a forum webxdc app that will expand groups if needed. The corkboard app goes a bit in that direction.

I like the telegram implementation of “threads”, maybe that’s something we could explore UX wise.