Workflow
Auth · Friends · Chat

Using Termchat day-to-day

Detailed steps from the user guide for authenticating, managing friends and rooms, chatting, and using commands. Start here after installation.

Authentication

Username rules
  • Minimum 4 characters.
  • Letters and numbers only (a-z, A-Z, 0-9).
  • No spaces, special characters, or emojis.
Validation applies to new signups; existing shorter names can still log in.
Session behavior
  • Sessions save locally so you remain signed in after closing Termchat.
  • Logout anytime from the Friends screen with L.
  • Forgot password? Create a new account—there is no password recovery yet.
Sign up
  1. Launch Termchat: termchat.
  2. Press 2 or S for Sign up.
  3. Enter a username that meets the rules above.
  4. Enter a password (input is hidden).
  5. Your account is created and you are logged in.
Log in
  1. Launch Termchat.
  2. Press 1 or L for Log in.
  3. Enter your username.
  4. Enter your password to reach the Friends screen.

Friends and rooms

Add and manage friends
Send a request
  1. From the Friends screen, press A.
  2. Type the username and press Enter to send.
Incoming requests
  1. Press I.
  2. Select with ↑/↓, Enter to accept, D to decline.
Outgoing requests
  1. Press O.
  2. Select with ↑/↓, D to cancel.
Online friends show a green dot; offline friends are gray.
Start or join rooms
Direct message
  1. Highlight a friend with ↑/↓.
  2. Press Enter to open a private room.
Join existing room
  1. Press M on the Friends screen.
  2. Enter the room code and press Enter.
Create new room
  1. Press N.
  2. Share the generated room code with others.
Quick join from CLI
termchat myroom
Rooms self-destruct when empty for privacy.

Chat flow and commands

Chat interface
  • Header shows room name, your username, and server info.
  • Status line reflects connection state (Connected/Connecting).
  • Messages stream in with timestamps and colors; history is scrollable.
  • Footer lists available commands and shortcuts.
  • Leave a room with Esc or /leave.
Command reference
Command-line flags
FlagDescriptionExample
--helpShow help and keyboard shortcutstermchat --help
--versionShow version informationtermchat --version
--updateUpdate to the latest versiontermchat --update
--server <url>Connect to a custom servertermchat --server ws://localhost:8080/join
--user <username>Pre-fill username for logintermchat --user alice
In-chat commands
CommandDescriptionExample
/uploadOpen file picker to select and upload a file/upload
/upload <path>Upload a specific file by path/upload ~/file.txt
/download <filename>Download a file shared in the room/download report.pdf
/leaveExit the current chat room/leave

Keyboard shortcuts

Authentication screens
1 or L — Log in
2 or S — Sign up
Q — Quit
Esc — Back
Enter — Submit
Friends screen
↑ / ↓ — Navigate friends
Enter — Start chat
A — Add friend
I — Incoming requests
O — Outgoing requests
M — Join room by code
N — Create new room
R — Refresh list
L — Logout
Q — Quit
Friend requests
↑ / ↓ — Navigate requests
Enter — Accept (incoming)
D — Decline or cancel
Esc — Back
Chat screen
Enter — Send message / run command
Esc — Leave room
Ctrl+C — Force quit
File picker
↑ / ↓ — Navigate files
Enter — Select file to upload
Esc — Cancel selection

Tips for faster workflows

  • Keep the Friends screen open as your hub to add friends, accept requests, and jump between rooms.
  • Lean on shortcuts—most actions are quicker with single-key navigation.
  • Use the file picker via /upload for paths you don't remember.
  • Create descriptive room names when inviting others; room codes are case-sensitive.
  • Refresh with R to update online status and requests.