Skip to content

2. Current features

FrostMantis edited this page Jun 18, 2026 · 3 revisions

Current Features — 0.4.1-beta


Messaging

  • Direct (1:1) messaging — start a conversation with any user by username
  • Group chats — create multi-user rooms, invite and remove participants
  • Real-time delivery — WebSocket-based instant message delivery
  • Typing indicators — see when the other person is composing a message
  • Full message history — scroll back through past conversations
  • Message length limit — messages are capped at 5 chunks; users are prompted to split longer content

User status & presence

  • Live online / offline status — updated in real time via WebSocket events
  • Visual status indicators — colour-coded dots with tooltips in the chat list

Chat management

  • Chat search — filter through your conversations to jump back into one quickly
  • Chat archiving — archive inactive chats to keep the list clean; unarchive at any time
  • Conversation deletion — delete a chat from your side, with confirmation

Account & authentication

  • Registration — username, password (with confirmation field), and email
  • Email verification — token-based; resend the verification email if the original is lost
  • Login / logout — token-based authentication
  • Persistent login / auto-login — stay signed in securely between app restarts
  • Password reset — triggered by email link
  • Change password — from account settings while logged in
  • Update username — change your display name from the UI
  • Update email — change your registered email address from settings
  • Account deletion / deactivation — remove or deactivate your account from the client
  • Logout all devices — invalidate all active sessions at once

VoIP (beta)

  • In-app voice calls powered by LiveKit
  • Peer-to-peer audio — low-latency calls between participants
  • Expect rough edges; this feature is still in active development

Server connection handling

  • Automatic detection of backend availability on startup
  • UI disables when the server is unreachable
  • Automatic and manual retry when connection is restored
  • Chat list updates automatically when you are added to a new chat

UI & UX

  • Two-pane layout — sidebar chat list + main message window
  • Dark-themed interface with responsive design
  • Toast notifications for user feedback
  • Keyboard shortcuts — Enter to send, Shift+Enter for a newline
  • Basic user profile page for viewing and editing account details

Architecture & backend

  • Electron client (Node.js) for Windows and Linux
  • Python Flask HTTP API (port 5123) + FastAPI WebSocket server (port 8765)
  • MariaDB for persistent storage
  • Modular codebase — separated HTML / CSS / JS on the client, blueprints + services on the server
  • Centralised API layer for all server requests
  • Secure local credential storage
  • Database initialisation does not require a root MySQL/MariaDB user
  • Rate-limited endpoints

Clone this wiki locally