Update Roadmap: mark Phases 2-4 as done
+35
-25
@@ -1,6 +1,6 @@
|
||||
# Development Roadmap
|
||||
|
||||
## Phase 1: Core Chat (MVP) — DONE
|
||||
## Phase 1: Core Chat (MVP) — ✅ DONE
|
||||
|
||||
- [x] Go backend scaffold
|
||||
- [x] PostgreSQL migrations
|
||||
@@ -10,38 +10,48 @@
|
||||
- [x] Channel CRUD
|
||||
- [x] Message CRUD with pagination
|
||||
- [x] React frontend scaffold
|
||||
- [x] Terminal-styled layout
|
||||
- [x] Terminal-styled layout (Gruvbox dark)
|
||||
- [x] Zustand stores (auth, server, channel, message, websocket)
|
||||
- [x] Docker Compose dev stack
|
||||
- [x] File uploads (MinIO)
|
||||
- [x] Giphy GIF search + trending
|
||||
- [x] User profiles (display name, bio, accent color, status, avatar/Gravatar)
|
||||
|
||||
## Phase 2: Voice & Video
|
||||
## Phase 2: Voice & Video — ✅ DONE
|
||||
|
||||
- [ ] LiveKit integration in frontend
|
||||
- [ ] Voice channels (persistent, drop-in)
|
||||
- [ ] Video calls
|
||||
- [ ] Screen sharing
|
||||
- [ ] Mute/deafen controls
|
||||
- [x] LiveKit container deployment
|
||||
- [x] coturn container deployment
|
||||
- [x] Voice channel UI (join/leave, participant list, mute/deafen)
|
||||
- [x] Backend: LiveKit room management (create, token generation)
|
||||
- [x] Video toggle within voice channels
|
||||
- [x] Screen sharing
|
||||
- [x] Voice state events (join/leave/mute) broadcast via WebSocket
|
||||
|
||||
## Phase 3: Polish & PWA
|
||||
## Phase 3: Polish & PWA — ✅ DONE
|
||||
|
||||
- [ ] PWA manifest and service worker
|
||||
- [ ] Web Push notifications (VAPID)
|
||||
- [ ] WebAuthn / passkeys
|
||||
- [ ] Mobile-responsive layout
|
||||
- [ ] Message reactions, replies, threads
|
||||
- [ ] Typing indicators
|
||||
- [ ] Online presence
|
||||
- [ ] Meilisearch message search
|
||||
- [ ] User profiles
|
||||
- [ ] Invite links
|
||||
- [x] PWA manifest + service worker
|
||||
- [ ] Web Push notifications (VAPID) — frontend ready, backend keys needed
|
||||
- [ ] WebAuthn / passkeys — deferred
|
||||
- [x] Mobile-responsive layout (bottom nav, swipe gestures)
|
||||
- [x] Message reactions (emoji picker, counts)
|
||||
- [x] Message replies/threads
|
||||
- [x] Typing indicators
|
||||
- [x] Online presence (online/idle/dnd/offline)
|
||||
- [x] User profiles (avatar upload, bio, status text)
|
||||
- [x] Dark mode (default) + light mode toggle
|
||||
- [x] Channel mention notifications (@user, @everyone, @role)
|
||||
- [x] Invite link system (with optional expiry)
|
||||
|
||||
## Phase 4: Bots & Extensibility
|
||||
## Phase 4: Bots & Extensibility — ✅ DONE
|
||||
|
||||
- [ ] Bot application creation
|
||||
- [ ] Bot token authentication
|
||||
- [ ] Bot WebSocket gateway
|
||||
- [ ] Slash commands
|
||||
- [ ] Incoming webhooks
|
||||
- [x] Bot application creation via API
|
||||
- [x] Bot token authentication
|
||||
- [x] Bot WebSocket gateway (receive events, send messages)
|
||||
- [x] Slash command registration and handling
|
||||
- [x] Incoming webhook endpoint
|
||||
- [x] Example bot: moderation (auto-delete, kick, ban commands)
|
||||
- [x] Example bot: welcome messages on member join
|
||||
- [ ] REST API documentation (OpenAPI/Swagger) — future
|
||||
|
||||
## Phase 5: TUI Client
|
||||
|
||||
|
||||
Reference in New Issue
Block a user