https://github.com/alessandrobessi/gochat
A simple multi user client/server chat application written in Go using less than 250 loc. Useful to learn how to deal with concurrency in Go (goroutines, channels, and mutexes).
https://github.com/alessandrobessi/gochat
channels chat client-server go golang goroutines mutexes
Last synced: over 1 year ago
JSON representation
A simple multi user client/server chat application written in Go using less than 250 loc. Useful to learn how to deal with concurrency in Go (goroutines, channels, and mutexes).
- Host: GitHub
- URL: https://github.com/alessandrobessi/gochat
- Owner: alessandrobessi
- License: gpl-3.0
- Created: 2020-08-05T12:04:36.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-08-08T09:52:22.000Z (almost 6 years ago)
- Last Synced: 2023-02-28T07:56:06.850Z (over 3 years ago)
- Topics: channels, chat, client-server, go, golang, goroutines, mutexes
- Language: Go
- Homepage:
- Size: 27.3 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gochat
A simple multi user client/server chat application written in Go using less than 250 loc.
Useful to learn how to deal with concurrency in Go (goroutines, channels, and mutexes).
### Usage
Launch the server:
`go run src/cmd/server/server.go`
Launch one or more clients:
`go run src/cmd/client/client.go`
### Commands
- `!quit` to leave the chat
- `!name [your-name]` to change your name
- `!dm [user] [message]` to send a private message to a user