Commit Graph

2 Commits

Author SHA1 Message Date
2c884d030a feat(server): usernames, IDs, and commands; sanitize names; richer join/leave messages
- Add go-nanoid to generate 6-char per-connection IDs; fallback to RemoteAddr
- Introduce sanitizeUsername with rules: [A-Za-z0-9_.-], spaces→_, trim ._-, max 12 chars
- Support /name <username> to change username with validation and broadcast [rename]
- Greet client with default username user_<id> and usage hint for /name
- Broadcast joins/leaves and messages including username and ID; exclude self on join
- Handle /quit to trigger unified leave flow; consistent leave announcement
- Comment/document broadcast struct, Hub, and startTCPServer
- Increase scanner buffer and add newline-delimited send in broadcaster
2025-10-15 11:25:56 +07:00
2651178a16 initial commit 2025-10-15 00:19:34 +07:00