Files
zep/FEATURES.md
T
2026-04-21 18:05:16 -04:00

4.2 KiB

Ditchcord Features Matrix

Completed Features

Feature Status Notes
Multi-server support [x] Scalable workspace switching with instant cache
Instant Load Pagination [x] 100-message "Recent Activity Cache" per channel
On-demand History Expansion [x] Lazy-load deep channel history via surgical subscriptions
Voice Channels [x] WebRTC audio signaling via SpacetimeDB
Screen Sharing [x] WebRTC video/screen sharing support
Threaded Conversations [x] Create threads from messages with unified scroll context
User Profiles [x] Avatars, Banners, Biographies, and Display Names
User Statuses [x] Custom status messages shown in member list and profile
Message Grouping [x] Merge consecutive messages from same user within 5 mins
Server Management [x] Create, Rename, Leave, Delete, and Upload Server Avatars
Private Servers [x] Servers restricted to invited members only via public flag
Server Invites [x] Secure 12-char codes with full URL join support and usage limits
Direct Messages [x] Private 1-on-1 messaging with instant conversation focus
End-to-End Encryption (E2EE) [x] Opt-in GPG encryption for DMs with dual-encryption for self-readability
Navigation Persistence [x] Automatically returns user to last active server/channel on reload
Join Status Feedback [x] User-visible error reporting for invalid/expired invites (no backend panics)
Max 5 images per message [x] Reducer-level enforcement and UI staged image limits
Consolidated Subscriptions [x] Merged 5+ state tables into 2; reduced network overhead
Restricted Visibility Views [x] RLS-like filtering for user states and typing activity
Dark/Light Mode Themes [x] Full theme engine with persistence and 7+ premium presets
Custom Emojis [x] Upload, categorization, and global picker support
Typing activity in a channel [x] Real-time indicators with restricted shared-context visibility
Responsive Design [x] Media queries for various screen sizes
Server Ownership [x] Tracked in the server table
Sync settings to SpacetimeDB [x] User profile and server memberships are persistent
Zep System Assistant [x] Automated welcome DMs for new users

🚀 Planned Features (PM Prioritized)

Phase 1: Core Engagement & Reliability

High-impact features that bridge the gap between "experimental" and "usable daily driver."

Feature Priority Difficulty Notes
Read Status P0 Med Unread indicators for channels and servers
@ Mentions P0 High Global tagging and notification triggers
Group DMs P1 Med Multi-user private conversations (3+ users)
Notifications P1 High RLS-protected delivery of mentions/DMs
View Optimization P1 Med Refactor nested loops in views.rs to use semijoins (O(N) scaling)
Rate limiting P1 High Prevent spam and module resource exhaustion

Phase 2: Enhanced Messaging UX

Improving the quality of life for active conversations.

Feature Priority Difficulty Notes
Replying to messages P2 Med Standalone replies (distinct from threads)
Profile Preview Cards P2 Med Quick-view user details when clicking in member list
Permissions System P2 High Simplified RBAC (Admin/Member/Guest roles)
S3 Media Offloading P2 High Optional background worker for SeaweedFS/S3 storage
Spoiler Content P3 Low Mark text or images as spoilers

Phase 3: Platform & Polish

Expanding reach and refining the feel of the application.

Feature Priority Difficulty Notes
Hotkey Support P3 Med Keyboard navigation and quick-switch shortcuts
Voice Clips P3 Med Record and attach short audio messages
Ephemeral Channels P4 Med Snapchat-style disappearing message channels
Custom Input Refactor P4 Low Disable platform-native autocorrect for a cleaner chat feel
Watch Party P4 High Synchronized video playback in voice channels