/java-chat-client

This is a chat client written in java using the javafx ui library. this uses sockets to transfer data between clients and the server as well as added encryption to the communications.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

java-chat-client

Status_Image

This is a chat client written in java using the javafx ui library.

This uses sockets to transfer data between clients.

it will send messages directly to the other user using end to end encryption using pubic- private key cryptography.

messages are stored locally on a file which is encrypted.

later on the messages will be sent via servers due to limitations with other operating systems.

that will only store details about where messages are to be sent, and permissions for the user on the server


Dependencies

  • java 13 - the jdk we are using.

  • JavaFx - used for the User interface. (installed via cradle)

  • gradle - the build system we are using. (used with a wrapper)


Execution

to run this program use the grade wrapper

linux

# to build the project.
./gradlew build

# to test the build
./gradlew test

# to run via gradle
./gradlew run

# to build a full exectuable jar version
./gradlew shadowjar

windows

# to build the project.
gradlew.bat build

# to test the build
gradlew.bat test

# to run via gradle
gradlew.bat run

# to build a full exectuable jar version
gradlew.bat shadowjar

Documentation Pages

Network Protocol

this Documentation is work in progress (feel free to critisise constructively)

#Owners michael-bailey mitch161