Update Roadmap: mark Phases 2-4 as done
+35
-25
@@ -1,6 +1,6 @@
|
|||||||
# Development Roadmap
|
# Development Roadmap
|
||||||
|
|
||||||
## Phase 1: Core Chat (MVP) — DONE
|
## Phase 1: Core Chat (MVP) — ✅ DONE
|
||||||
|
|
||||||
- [x] Go backend scaffold
|
- [x] Go backend scaffold
|
||||||
- [x] PostgreSQL migrations
|
- [x] PostgreSQL migrations
|
||||||
@@ -10,38 +10,48 @@
|
|||||||
- [x] Channel CRUD
|
- [x] Channel CRUD
|
||||||
- [x] Message CRUD with pagination
|
- [x] Message CRUD with pagination
|
||||||
- [x] React frontend scaffold
|
- [x] React frontend scaffold
|
||||||
- [x] Terminal-styled layout
|
- [x] Terminal-styled layout (Gruvbox dark)
|
||||||
- [x] Zustand stores (auth, server, channel, message, websocket)
|
- [x] Zustand stores (auth, server, channel, message, websocket)
|
||||||
- [x] Docker Compose dev stack
|
- [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
|
- [x] LiveKit container deployment
|
||||||
- [ ] Voice channels (persistent, drop-in)
|
- [x] coturn container deployment
|
||||||
- [ ] Video calls
|
- [x] Voice channel UI (join/leave, participant list, mute/deafen)
|
||||||
- [ ] Screen sharing
|
- [x] Backend: LiveKit room management (create, token generation)
|
||||||
- [ ] Mute/deafen controls
|
- [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
|
- [x] PWA manifest + service worker
|
||||||
- [ ] Web Push notifications (VAPID)
|
- [ ] Web Push notifications (VAPID) — frontend ready, backend keys needed
|
||||||
- [ ] WebAuthn / passkeys
|
- [ ] WebAuthn / passkeys — deferred
|
||||||
- [ ] Mobile-responsive layout
|
- [x] Mobile-responsive layout (bottom nav, swipe gestures)
|
||||||
- [ ] Message reactions, replies, threads
|
- [x] Message reactions (emoji picker, counts)
|
||||||
- [ ] Typing indicators
|
- [x] Message replies/threads
|
||||||
- [ ] Online presence
|
- [x] Typing indicators
|
||||||
- [ ] Meilisearch message search
|
- [x] Online presence (online/idle/dnd/offline)
|
||||||
- [ ] User profiles
|
- [x] User profiles (avatar upload, bio, status text)
|
||||||
- [ ] Invite links
|
- [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
|
- [x] Bot application creation via API
|
||||||
- [ ] Bot token authentication
|
- [x] Bot token authentication
|
||||||
- [ ] Bot WebSocket gateway
|
- [x] Bot WebSocket gateway (receive events, send messages)
|
||||||
- [ ] Slash commands
|
- [x] Slash command registration and handling
|
||||||
- [ ] Incoming webhooks
|
- [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
|
## Phase 5: TUI Client
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user