block / block/buzz

Mobile: render synced custom sidebar sections / channel order (desktop-only today; mobile has stars only)

Open
#3,363 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
32.7k
Forks
4.3k
Avg merge
1d 13h
Merged PRs (30d)
253

Description

## Summary

Desktop has a rich sidebar-organization system — starred channels, custom named sections with explicit ordering, drag-and-drop between/among sections, and per-group sort modes — and these preferences sync (`channelStarsSync` / `channelSectionsSync` / `channelSortSync`). Mobile implements only channel starring (`channel_stars/`); custom sections, section ordering, and drag-reorder are absent, so a user's organized sidebar collapses back to a flat list on the phone.

## Why it matters

The section feature is what makes one community usable for mixed contexts — e.g. a small-business owner running **Personal / Family** sections alongside **Business / Team** sections in the same community. That kind of user is often mobile-first (see also #2735), so the organization they build on desktop is invisible exactly where they spend the most time.

## Reproduction

1. On desktop, star a few channels and create a custom section; drag channels into it.
2. Open the same community on the iOS app with the same identity.
3. Starred group appears, but custom sections/order do not — the channel list is flat.

## Suggestion

Render synced custom sections (read-only would already be a big win) on mobile, then add drag/reorder editing as a follow-up. The sync layer already exists on the desktop side, so mobile mostly needs read + render of the section preference events.

Contributor guide

Open the contributing guide

Research direction

Start in the iOS mobile channel_stars/ implementation and trace the synced channelSectionsSync and channelSortSync preference events from the desktop side. Render custom sections and their explicit order as read-only on mobile, while preserving the existing starred-channel behavior. Confirm that the desktop-to-iOS reproduction no longer produces a flat channel list.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, rust
Domain
mobile
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.