From e380d4e381d9962ae461bfc4c4bbfc2b7d8359f3 Mon Sep 17 00:00:00 2001 From: hobokenchicken Date: Tue, 30 Jun 2026 08:18:23 -0400 Subject: [PATCH] docs: feature parity comparison with Discord, Guilded, TeamSpeak 6, Fluxer --- FEATURE_PARITY.md | 251 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 251 insertions(+) create mode 100644 FEATURE_PARITY.md diff --git a/FEATURE_PARITY.md b/FEATURE_PARITY.md new file mode 100644 index 0000000..7b39d64 --- /dev/null +++ b/FEATURE_PARITY.md @@ -0,0 +1,251 @@ +# dumpsterChat Feature Parity Comparison + +## vs Discord, Guilded (historical), TeamSpeak 6, Fluxer + +Compiled 2026-06-30. Guilded data reflects its pre-shutdown state. + +--- + +## Legend + +| Icon | Meaning | +|------|---------| +| ✅ | Implemented | +| ❌ | Not implemented | +| 🔄 | In progress / planned | +| ⚠️ | Partial / buggy | + +--- + +## 1. Text Chat + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Text channels | ✅ | ✅ | ✅ | ✅ | ✅ | +| Direct messages | ❌ | ✅ | ✅ | ❌ | ✅ | +| Markdown support | ⚠️ basic | ✅ full | ✅ full | ❌ basic | ✅ full | +| Reactions | ✅ | ✅ | ✅ | ❌ | ✅ | +| Replies | ✅ | ✅ | ✅ | ❌ | ✅ | +| Threads | ❌ | ✅ | ✅ | ❌ | 🔄 | +| Forum channels | ❌ | ✅ | ✅ | ❌ | 🔄 | +| Pinned messages | ✅ | ✅ | ✅ | ✅ | ✅ | +| Message search | ❌ | ✅ full | ✅ | ❌ | ✅ Meilisearch | +| Edit / delete messages | ✅ | ✅ | ✅ | ❌ | ✅ | +| Rich embeds / link unfurling | ❌ | ✅ | ✅ | ❌ | ✅ | +| File uploads | ⚠️ MinIO | ✅ | ✅ | ✅ | ✅ S3-backed | +| GIF picker (Giphy) | ✅ | ✅ | ✅ | ❌ | ✅ | +| Typing indicators | ✅ | ✅ | ✅ | ❌ | ✅ | +| Message history (pagination) | ✅ | ✅ | ✅ | ✅ | ✅ | +| Read receipts | ❌ | ✅ | ✅ | ❌ | 🔄 | + +--- + +## 2. Voice & Video + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Voice channels | ✅ LiveKit | ✅ | ✅ | ✅ | ✅ LiveKit | +| Video calls | ❌ | ✅ | ✅ | ✅ | ✅ | +| Screen share | ❌ | ✅ | ✅ | ✅ beta | 🔄 canary | +| Noise suppression | ❌ | ✅ Krisp | ✅ | ❌ | ✅ DeepFilterNet3 | +| Push-to-talk | ❌ | ✅ | ✅ | ✅ | ✅ | +| Voice activity | ✅ | ✅ | ✅ | ✅ | ✅ | +| Go live / streaming | ❌ | ✅ | ✅ | ❌ | 🔄 | +| Stage channels | ❌ | ✅ | ❌ | ❌ | ❌ | +| E2EE voice/video | ❌ | ✅ | ❌ | ❌ | 🔄 | +| Whisper / poke | ❌ | ❌ | ✅ | ✅ | ❌ | + +--- + +## 3. User System + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| User profiles | ✅ basic | ✅ rich | ✅ rich | ✅ basic | ✅ medium | +| Avatars | ✅ Gravatar | ✅ | ✅ | ✅ | ✅ | +| Custom status (text) | ✅ | ✅ | ✅ | ❌ | ✅ | +| Status states (online/idle/dnd/offline) | ✅ | ✅ | ✅ | ✅ | ✅ | +| Badges | ❌ | ✅ | ✅ | ✅ | ✅ | +| Usernames + discriminators | ✅ | ⚠️ handles | ❌ | ✅ UID | ✅ #0000 | +| Friend requests | ❌ | ✅ | ✅ | ❌ | ✅ | +| Block list | ❌ | ✅ | ✅ | ❌ | ❌ | +| Activity / game status | ❌ | ✅ | ✅ | ❌ | ❌ | + +--- + +## 4. Roles & Permissions + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Roles | ✅ | ✅ | ✅ | ✅ | ✅ | +| Hierarchical roles | ⚠️ basic | ✅ | ✅ | ✅ | ✅ | +| Permission bitflags | ✅ | ✅ | ✅ | ✅ granular | ✅ | +| Per-channel permission overrides | ❌ | ✅ | ✅ | ✅ | ✅ | +| @everyone default role | ✅ | ✅ | ✅ | ✅ | ✅ | +| Role colors | ❌ | ✅ | ✅ | ❌ | ✅ | +| Role icons | ❌ | ✅ Nitro | ❌ | ❌ | ❌ | +| Administrator bypass | ✅ | ✅ | ✅ | ✅ | ✅ | + +### dumpsterChat Permissions (current) + +`VIEW_CHANNEL`, `SEND_MESSAGES`, `MANAGE_MESSAGES`, `KICK_MEMBERS`, `BAN_MEMBERS`, `MANAGE_SERVER`, `MANAGE_CHANNELS`, `ADMINISTRATOR`, `CONNECT_VOICE`, `SPEAK_VOICE`, `SHARE_SCREEN`. + +**Missing compared to Discord/Guilded:** `CREATE_INSTANT_INVITE`, `CHANGE_NICKNAME`, `MANAGE_NICKNAMES`, `MANAGE_ROLES`, `MANAGE_WEBHOOKS`, `EMBED_LINKS`, `ATTACH_FILES`, `ADD_REACTIONS`, `USE_EXTERNAL_EMOJIS`, `MENTION_EVERYONE`, `USE_VOICE_ACTIVITY`, `PRIORITY_SPEAKER`, `MUTE_MEMBERS`, `DEAFEN_MEMBERS`, `MOVE_MEMBERS`, `REQUEST_TO_SPEAK`, etc. + +--- + +## 5. Moderation + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Kick | ⚠️ permission exists, UI? | ✅ | ✅ | ✅ | ✅ | +| Ban | ⚠️ permission exists, UI? | ✅ | ✅ | ✅ | ✅ | +| Mute (voice/text) | ❌ | ✅ | ✅ | ✅ | ✅ | +| Timeout | ❌ | ✅ | ❌ | ❌ | ❌ | +| Slowmode | ❌ | ✅ | ✅ | ❌ | ✅ | +| AutoMod | ❌ | ✅ | ✅ Flow Bots | ❌ | 🔄 | +| Audit log | ❌ | ✅ | ✅ | ❌ | ✅ | +| Message delete bulk | ❌ | ✅ | ✅ | ❌ | ✅ | +| Member screening / applications | ❌ | ❌ | ✅ recruitment | ❌ | ❌ | +| Reports | ❌ | ✅ | ✅ | ❌ | ✅ | + +--- + +## 6. Server Management + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Create / delete server | ✅ | ✅ | ✅ | ✅ | ✅ | +| Server icon | ✅ | ✅ | ✅ | ✅ | ✅ | +| Channel categories | ✅ | ✅ | ✅ | ✅ | ✅ | +| Channel types | text, voice | 8+ | 10+ | voice + text | text, voice | +| Channel reordering (position) | ✅ | ✅ | ✅ | ✅ | ✅ | +| Server invites | ✅ | ✅ | ✅ | ✅ | ✅ | +| Vanity URLs | ❌ | ✅ Nitro | ❌ | ❌ | ❌ | +| Webhooks | ✅ | ✅ | ✅ | ❌ | ✅ | +| Bots / API | ⚠️ slash cmds | ✅ huge | ✅ Flow Bots | ❌ plugins | 🔄 | +| Server templates | ❌ | ✅ | ❌ | ❌ | ❌ | +| Server discovery | ❌ | ✅ | ✅ | ✅ | 🔄 | +| Server analytics | ❌ | ✅ | ✅ | ❌ | ❌ | +| Server monetization | ❌ | ❌ | ✅ Subs | ❌ | ❌ | +| Server groups / sub-servers | ❌ | ❌ | ✅ | ✅ virtual | ✅ communities | + +--- + +## 7. Notifications + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Desktop notifications | ⚠️ possible via SW | ✅ | ✅ | ✅ | ✅ | +| Web push notifications | ✅ | ✅ | ✅ | ✅ | ✅ | +| @mention push | ✅ | ✅ | ✅ | ❌ | ✅ | +| Channel-wide push | ✅ | ✅ | ✅ | ❌ | ✅ | +| Email notifications | ❌ | ✅ | ✅ | ❌ | 🔄 | +| Mobile apps | ❌ | ✅ iOS/Android | ✅ | ✅ | 🔄 Flutter alpha | +| Per-channel notification settings | ❌ | ✅ | ✅ | ✅ | ✅ | +| Do Not Disturb schedule | ❌ | ✅ | ❌ | ❌ | ❌ | + +--- + +## 8. Bots & Integrations + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Bot accounts | ✅ | ✅ | ✅ Flow Bots | ⚠️ plugins | 🔄 | +| Bot tokens | ✅ | ✅ | ✅ | ❌ | ✅ | +| Slash commands | ✅ | ✅ | ✅ | ❌ | 🔄 | +| Command options / JSON schema | ✅ | ✅ | ✅ | ❌ | 🔄 | +| Bot mentions | ✅ | ✅ | ❌ | ❌ | 🔄 | +| Third-party integrations (Twitch, YouTube, GitHub) | ❌ | ✅ | ✅ | ❌ | 🔄 | +| Webhook-driven bots | ✅ | ✅ | ✅ | ❌ | ✅ | + +--- + +## 9. Unique / Differentiating Features + +### dumpsterChat +- Self-hosted, lightweight Go + React stack +- Terminal/Gruvbox aesthetic +- WebAuthn / passkey auth +- LiveKit voice integration +- Built-in webhook execution for simple integrations + +### Discord +- Massive network effect (200M+ MAU) +- Nitro subscription perks (animated avatars, HD streaming, larger uploads) +- Activities / embedded apps in voice channels +- Server boosting tiers +- Stage channels +- Activities marketplace + +### Guilded (historical) +- Built-in calendar with RSVP +- Scheduling + availability system +- Docs / forms +- Lists (task management) +- Tournaments +- Server Subs monetization +- Server Groups (sub-servers) + +### TeamSpeak 6 +- Self-hosted by design, free up to 32 slots +- Granular Power/Needed Power permission system +- Low resource client +- Plugin ecosystem +- Virtual servers +- Whisper / poke / channel commander + +### Fluxer +- Fully open-source AGPL-3, Docker Compose deploy +- No paywalls / license keys +- Planned federation +- Multi-backend switching +- Erlang/OTP gateway for scale +- 34 locales + +--- + +## 10. Infrastructure & Platform + +| Feature | dumpsterChat | Discord | Guilded | TeamSpeak 6 | Fluxer | +|---------|:------------:|:-------:|:-------:|:-----------:|:------:| +| Self-hostable | ✅ | ❌ | ❌ | ✅ | ✅ | +| Open source | ❌ | ❌ | ❌ | ❌ | ✅ AGPL-3 | +| PWA support | ✅ | ✅ | ✅ | ✅ | ✅ | +| REST API | ✅ | ✅ | ✅ | ❌ | ✅ | +| WebSocket gateway | ✅ | ✅ | ✅ | ✅ | ✅ | +| Swagger docs | ✅ localhost | ✅ | ✅ | ❌ | ✅ | +| Docker Compose | ✅ | ❌ | ❌ | ❌ | ✅ | + +--- + +## Priority Recommendations + +### Critical gaps (would block most Discord/Guilded users) + +1. **Direct Messages** — no way to message users outside servers +2. **Ban/kick UI** — permissions exist but likely no interface +3. **Mute/timeout UI** — no time-based moderation +4. **Audit log** — essential for any server with more than a few members +5. **Message search** — expected baseline feature +6. **Mobile app** — major adoption blocker +7. **Voice push-to-talk** — important for voice-heavy communities + +### High-value next features + +1. **Screen share** — LiveKit supports it; mostly frontend work +2. **Video calls** — LiveKit supports it; mostly frontend work +3. **Threads** — keeps busy channels usable +4. **Per-channel permission overrides** — unlocks serious server organization +5. **Rich embeds / link unfurling** — big quality-of-life improvement +6. **Audit log** — required for moderation at scale +7. **Custom emoji / reactions beyond unicode** — core Discord behavior + +### Nice-to-have differentiators + +1. **Calendar / events** (Guilded-style) +2. **Forums** (Discord-style) +3. **Stage channels** +4. **Server discovery** +5. **Activities / embedded games** +6. **Federation** (Fluxer-style)