Instant messaging chat system over TCP.
Written in Rust with tokio-rs.
Packet design and handshake inspired partially by Minecraft.
- Standalone server
- GUI client (using
druid
UI toolkit) with customizations via config file - TUI client
- Encryption
- Sending images (via clipboard)
- Server management (banning, whitelists, etc)
- Improve GUI experience (sidebar with active users, loading up past messages and more)
- Verify that the encryption is secure
- Add more features
- Figure out long-term goals
- Server:
- tokio-rs
- postgres
- GUI:
- tokio-rs
- druid
- Obtain
accord-server
binary.
Currently only method is to compile it yourself.
git clone https://github.com/LoipesMas/accord.git
cd accord
cargo b -p accord-server --release
- Set up postgresql database somewhere.
Refer to postgres instructions for how to do that. - Launch
accord-server
. It will error something about connecting to the database, but we just need the default config. - Edit the config (probably located in
~/.config/accord-server/config.toml
) with correct postgres credentials. - Launch
accord-server
again, this time it should connect. - Done!
Now clients can connect.
Contributions are very welcome! Features, ideas, bug fixes, anything.