feat(chat): group consecutive messages into message blocks for more consistent dom flow and fixing weird spacing #157

Closed
theAnuragMishra wants to merge 1 commits from theAnuragMishra/flotilla:dev into dev
Contributor

This pr makes the following changes to implement a better structure for chat messages.

  • Add components/RoomMessageBlock.svelte to render a block header (profile picture, display name, timestamp) and
    group consecutive messages from the same user.
  • Refactor src/app/components/RoomItem.svelte to support grouped-mode (isGrouped) and remove per-message header/spacing, keep
    reactions/actions intact.
  • Update message feed processing in:
  • src/routes/spaces/[relay]/[h]/+page.svelte
  • src/routes/spaces/[relay]/chat/+page.svelte
    to emit message-block items (respecting the existing 3-minute gap rule) and render blocks via RoomMessageBlock.

Before and After screenshots attached in that order.

This pr makes the following changes to implement a better structure for chat messages. - Add components/RoomMessageBlock.svelte to render a block header (profile picture, display name, timestamp) and group consecutive messages from the same user. - Refactor src/app/components/RoomItem.svelte to support grouped-mode (isGrouped) and remove per-message header/spacing, keep reactions/actions intact. - Update message feed processing in: - src/routes/spaces/[relay]/[h]/+page.svelte - src/routes/spaces/[relay]/chat/+page.svelte to emit message-block items (respecting the existing 3-minute gap rule) and render blocks via RoomMessageBlock. Before and After screenshots attached in that order.
theAnuragMishra added 1 commit 2026-04-05 11:26:10 +00:00
- Add components/RoomMessageBlock.svelte to render a block header (profile picture, display name, timestamp) and
group consecutive messages from the same user.
 - Refactor src/app/components/RoomItem.svelte to support grouped-mode (isGrouped) and remove per-message header/spacing, keep
 reactions/actions intact.
 - Update message feed processing in:
  - src/routes/spaces/[relay]/[h]/+page.svelte
  - src/routes/spaces/[relay]/chat/+page.svelte
  to emit message-block items (respecting the existing 3-minute gap rule) and render blocks via RoomMessageBlock.
Author
Contributor

moved to #159 to follow the contribution workflow.

moved to #159 to follow the contribution workflow.
theAnuragMishra closed this pull request 2026-04-05 11:38:50 +00:00

Pull request closed

Sign in to join this conversation.