From 596dd0db0500a7c43f57f2d26eecd5d6e82b2119 Mon Sep 17 00:00:00 2001 From: michael bailey Date: Tue, 3 Aug 2021 21:54:04 +0100 Subject: [PATCH] Update README.md (#16) * Update README.md + added feature, todo and goals section. * Update README.md --- README.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index de85e4c..260be15 100644 --- a/README.md +++ b/README.md @@ -1 +1,32 @@ -# rust-chat-server \ No newline at end of file +# Rust-chat-server + +A Chat server writen in rust to allow communication between peers. + +--- + +## Features: +- implemented: + - json based API. + - Server introspection. + - Peer discovery. + - sending messages to connected clients. + - +- todo: + - Encryption to server. + - server to server meshing. + - asynchronous client managment instead of threaded approach. + +## Goals: +- Learn the rust programming lanaguage. + - Ownership: how that affects normal programming styles. + - Borrowing and references: how this affects shared state. + - Lifetimes: how this affects data retention and sharing. +- Learn how to create networked programs. + - Application level protocol: how to get two programs to communicate via TCP sockets. + - Socket handling: Discovering ways to handle multiple socket connections without affecting performance. +- Learn common encryption protocols. + - Adding support for encrypted sockets. + - Pros and cons of symetric and asymetric encryption. + - resolving common encryption flaws + +> Questions: For questions please add a issue with the question label. It will eventually be responded to