There is currently also ++NO ENCRYPTION++ of messages so use at your own risk.
Are you tired of Big Tech™ constantly leaking your valuable information and do you want to exactly know how your messages are processed and received?
And do you also just want to have a simple messaging app for yourself (and your friends)?
Well then the 8080_msg project is just for you!
- self-hostable chat server
- cross-platform terminal client
- ability to make custom clients (not recomended for now)
- save chat history in a sqlite database
- everything in the 8080_msg project is and will always be free and open-source
The 8080_msg project consists of 3 parts:
-
lib8080_msg
Lib8080_msg is the internal library used by the server and client of the 8080_msg project.
It defines the core types and methods used. -
server_8080
Server_8080 is the server used by the 8080_msg project.
It does everything you would expect a server to do like sending and receiving data, listening for connections etc. -
tty_8080
And last but not least tty_8080: the official terminal client of the 8080_msg project.
The interface is kinda ugly for now, but will hopefully be updated in the future.
- working prototype of all the components
- database for storing message history
- file transfers
- encryption with tls
- add some sort of private messaging (i.e. a message only readable by one user)
- 'upgrade' the look of tty_8080
- some form of authentication
- have multiple rooms in one server
- add software for managing the server
- add presistent user profile in tty_8080
- create a guide for making a custom client
- (optional) create a simple gui client
- (optional) create a simple web client
More info about the custom network protocol used coming (soon)!
Currently data is just converted into json, but a different format will come before stable, so that the protocol can be language agnostic.
coming (soon)!
Building from soure is very easy.
First clone and cd into the repo:
git clone https://github.com/Cheese-Space/8080_msg
cd 8080_msgThen cd into the part you want to build, for example tty_8080:
cd tty_8080And finally build/run via cargo:
cargo run -- --adress localhost --port 8080 --username cheese_space