.TH TERMCHAT 1 "2026" "termchat" "User Commands" .SH NAME termchat \- minimal anonymous terminal chatrooms .SH SYNOPSIS .B termchat [\fIOPTIONS\fR] [\fIROOM\fR] .br .B termchat host [\fIROOM\fR] [\fIOPTIONS\fR] .br .B termchat discover [\fIOPTIONS\fR] .SH DESCRIPTION .B termchat is a lightweight terminal\-native chat client. Open a terminal, run one command, and instantly join or create an anonymous chatroom. .PP Built for quick collaboration, debugging sessions, pair programming, temporary communities, and internet\-native realtime chat. .PP If no \fIROOM\fR code is given, a new room is created automatically. .PP LAN host mode starts a local WebSocket server in the same process and opens the normal terminal UI. Other users join directly by IP address. A UDP multicast beacon is broadcast every second, enabling LAN room discovery via \fBtermchat discover \-\-local\fR. .PP The first user to join a room becomes the host. The host is shown with a \fB[host]\fR tag in the user list sidebar. When the host disconnects, the next oldest user by join time becomes the new host. .SH OPTIONS .TP .BR \-\-room " " \fICODE\fR Join an existing room by its code. .TP .BR \-\-host " " \fIADDRESS\fR Connect to a LAN host by IP address or hostname. The WebSocket URL is built as \fBws://ADDRESS:PORT/ws\fR unless \fB\-\-server\fR is provided. .TP .BR \-\-port " " \fIPORT\fR LAN WebSocket port for hosting or joining (default: 8080). .TP .BR \-\-server " " \fIURL\fR WebSocket server URL (default: wss://termchat.sacred99.online/ws). This option takes priority over \fB\-\-host\fR and \fB\-\-port\fR. .TP .BR \-\-api " " \fIURL\fR API server URL (default: https://termchat.sacred99.online). .TP .BR \-\-password " " \fIPASS\fR Room password for hosting or joining. If joining a locked room without this flag, the CLI prompts interactively. .TP .BR \-\-online Discover filter: show online rooms only. .TP .BR \-\-local Discover filter: show LAN rooms only. .TP .BR \-\-version Show version and exit. .TP .BR \-\-help ", " \-h Show command usage and exit. .SH HOST MODE .TP .B termchat host Generate a room code, start a local WebSocket server on port 8080, join the room locally, and open the TUI. .TP .B termchat host \fIROOM\fR Start a local WebSocket server, validate and join \fIROOM\fR, and open the TUI. .TP .B termchat host [\fIROOM\fR] \-\-port \fIPORT\fR Host on a custom port. .TP .B termchat host [\fIROOM\fR] \-\-password \fIPASS\fR Host a password\-protected (locked) room. .SH COMMANDS The following commands can be typed in the chat input: .TP .B /help Show available commands. .TP .B /clear Clear chat history. .TP .B /nick \fINAME\fR Change your nickname. .TP .B /color \fI#RRGGBB\fR Change your nickname color (hex format). .TP .B /password \fINEWPASS\fR Set or change the room password (host only). .TP .B /password Remove the room password and unlock the room (host only). .TP .B /quit Exit the room. .SH KEYBINDINGS .TP .B Enter Send message. .TP .B Alt+Enter Insert newline. .TP .B Up/Down Scroll through input history. .TP .B PgUp/PgDown Scroll chat viewport. .TP .B Ctrl+C Quit. .SH FILES .TP .I ~/.termchat/config.json User configuration (nickname, color). Created automatically. .SH EXAMPLES Create a new room: .PP .RS .B termchat .RE .PP Join an existing room: .PP .RS .B termchat 7WHB .RE .PP Join with \fB\-\-room\fR flag: .PP .RS .B termchat \-\-room 7WHB .RE .PP Use a custom server: .PP .RS .B termchat \-\-server wss://my.server/ws \-\-api https://my.server .RE .PP Host a LAN room with an auto\-generated room code: .PP .RS .B termchat host .RE .PP Host a specific LAN room: .PP .RS .B termchat host FROG .RE .PP Host on a custom LAN port: .PP .RS .B termchat host FROG \-\-port 9000 .RE .PP Join a LAN room by IP address: .PP .RS .B termchat FROG \-\-host 192.168.1.42 .RE .PP Join a LAN room on a custom port: .PP .RS .B termchat FROG \-\-host 192.168.1.42 \-\-port 9000 .RE .PP Host a password\-protected room: .PP .RS .B termchat host \-\-password secret .RE .PP Join a room with a password: .PP .RS .B termchat FROG \-\-password secret .RE .PP Discover all rooms (online and LAN): .PP .RS .B termchat discover .RE .PP Discover online rooms only: .PP .RS .B termchat discover \-\-online .RE .PP Discover LAN rooms only: .PP .RS .B termchat discover \-\-local .RE .SH BUGS Report bugs at \fIhttps://github.com/ishaan\-jindal/termchat/issues\fR. .SH AUTHOR Ishaan Jindal .SH LICENSE MIT License. See \fI/usr/share/licenses/termchat/LICENSE\fR. .SH SEE ALSO Project homepage: \fIhttps://github.com/ishaan\-jindal/termchat\fR