🐜 - A Local Network chat built in Go
The goal is to build a local network chat where clients can connect to server, send / receive message to other clients. This project is designed to be educational and fun, providing a hands-on experience with distributed systems and concurrent programming in Go.
- handle client connection, receiving / sending message to connected clients
- send message to clients, send message has 'SERVER' to all clients
- Close client remotely, can close all current connections
- UI interface, views / sends message to the server.
- Send message to sever, and server returns to others clients.
- Persistent connection:
- If the connection is lost, the client automatically attempts to reconnect.
- It continues until the server sends an exit message.
You can send messages from Windows or Linux computers on the same network.
-
Start the server:
./ants-chat server
-
Start one or more clients:
./ants-chat
- Start the server: it waits for client connections.
- Clients connect: each client registers with the server.
- The server handle client messgaes: receive message and returns to others clients.
- If a client disconnects, it automatically attempts to reconnect.
This project is inspired from another one Marmot Reduce
This project is open-source and licensed under MIT.