A chat app written in go
Not yet available.
Prerequisites:
- Git (https://git-scm.com/)
- Go (https://go.dev/)
- Node (https://nodejs.org/en)
Minimal steps:
- Clone the repository.
git clone https://github.com/TeenageMutantCoder/chat-app-go.git
orgit clone git@github.com:TeenageMutantCoder/chat-app-go.git
- Change directories into the repository.
cd chat-app-go
- Run the server.
go run .
- Visit the web page at http://localhost:8080/
Steps for development:
- Clone the repository.
git clone https://github.com/TeenageMutantCoder/chat-app-go.git
- Change directories into the repository.
cd chat-app-go
- Install node dependencies.
npm install
- Run the development server.
npm run dev
- In another terminal, allow tailwind to watch the template files.
npm run tw:watch
- Visit the web page at http://localhost:8080/
- Make this a PWA
- Store messages and users in a database (or don't, if a more privacy-focused app)
- Use websockets instead of polling to retrieve new messages
- Add ability to create/join/remove different chat rooms
- Add ability to send multimedia messages
- Deploy this app online
- Add better auth
- Make it easier to change nickname
- Add ability to mute/block users
- Add rate limiting, timeouts, bans to prevent spam (possibly optional per chat room)
- Add notifications when there are new messages
- Add roles and permissions per chat room