- Description
- Requirements
- Technology
- Setup Instructions
- Screenshots
- Contributors
- Progress
- Troubleshooting
A JavaFX server-client chat application integrated with a MySQL database.
Please refer to the Requirement document.
- Language:
Java
- GUI:
JavaFX
- Database:
Docker
+MySQL
- Build Tool:
Maven
- Public Localhost Port:
Ngrok
[!] You have to do this if you want to run client on your own
- Ensure Docker and Docker Compose are installed on your machine.
- Run the following command in the directory containing the
docker-compose.yml
file:
docker-compose up -d
-
This will:
- Create a MySQL server accessible at
localhost:3307
- Host Adminer (a database manager) at
localhost:8081
- Create a MySQL server accessible at
-
Finally, browse to
localhost:8081
(adminer)- Login with username and password init in the
docker-compose.yml
- Choose database
chat-app
then run the sql init command in the filesql-init.txt
- Login with username and password init in the
-
Copy the sample configuration file:
cp ./server/src/main/resources/config.sample.properties ./server/src/main/resources/config.properties
-
Update the
config.properties
file with your database details:DATABASE_URL=jdbc:mysql://localhost:3307/chat-app DATABASE_USER_NAME=your-username DATABASE_PASSWORD=your-password
- Replace
your-username
andyour-password
with the value you initialize in yourdocker-comse.yml
- Install Ngrok from here.
- Run the following command to expose the server port:
ngrok tcp 9001
- Server
./server/run.sh
- Client
./client/run.sh
Prerequisites Make sure you have the parent folder of sh.exe (including in GitBash) in your PATH
- Server
sh .\server\run.sh
- Client
sh .\client\run.sh
Student ID | Student Name |
---|---|
20225545 | Nguyễn Quang Hưng |
20225544 | Hạ Nhật Duy |
For now our progress will store in this Docs and Overleaf
Well, it will be deleted when this project is done