Add README.md

This commit is contained in:
Donatas Kirda 2025-05-11 17:17:11 +00:00 committed by Donatas Kirda
parent 3c7845f439
commit 69c4403556
Signed by: bloodwiing
GPG Key ID: 63020D8D3F4A164F

36
README.md Normal file
View File

@ -0,0 +1,36 @@
![Gossip Logo](https://i.imgur.com/5ch6Szp.png)
A 2nd year Vilnius University Computer Science Course project.
A Java and JavaFX based messaging platform demo.
![Screenshot](https://i.imgur.com/GaOnyxR.png)
## Video
<video width="750" height="486" controls src="https://i.imgur.com/DGGXss0.mp4"></video>
## Components
Gossip is split into 3 parts, each of their own folder:
* [**Lib**](https://git.wiing.dev/bloodwiing/Gossip/src/branch/main/Lib)
- The main Library, standardising packet communication between Clients and Servers as well as data types.<br>Both **Client** and **Server** must import this module.
* [**Client**](https://git.wiing.dev/bloodwiing/Gossip/src/branch/main/Client)
- JavaFX application that connects to the **Server** and reacts to & renders packets asynchronously.
* [**Server**](https://git.wiing.dev/bloodwiing/Gossip/src/branch/main/Server)
- A simple Java server with a non-persistent Database
## Technical
Once a user creates an account, the server generates an ID and Secret for the user.
The ID can identify a User and be used to retrieve public information such as username and avatar. But authentication happens with the generated Secret.
To perform any user action, the client must provide the secret alongside.
## Libraries
* [JavaFX](https://openjfx.io/)