Go-Sockets is a lightweight chat application built using the Go programming language. It allows multiple clients to connect over sockets and communicate in real-time. Each client is assigned an anonymized unique identifier (UUID), ensuring privacy and anonymity.
Example chat interaction with two clients.

- Simple Server-Client Architecture: Utilizes Go's built-in
netpackage to establish TCP connections. - Anonymized IDs for Clients: Each client is assigned a randomized UUID to ensure privacy.
- Concurrent Handling: The server can handle multiple client connections concurrently, thanks to Go's Goroutines.
- Go (Version 1.20.6 or newer is recommended)
- Visual Studio Code (Recommended for development)
- Go Extension for Visual Studio Code (For enhanced Go development experience in VS Code)
-
Clone the Repository:
git clone https://github.com/avaavarai/go-sockets.git cd go-sockets -
Install Dependencies:
go get github.com/google/uuid
-
Run the Server:
go run server\main.goThis starts the server on
localhost:8080. -
Run the Client:
In a new terminal window or instance:
go run client\main.goThis connects the client to the server. You can run multiple clients to simulate a chat environment.
We welcome contributions! Please feel free to submit pull requests, report bugs, and suggest new features.
This project is available under the GPL-3.0 License. See LICENSE for more details.