Skip to content

turbolaft/FullStackJavaApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FullStackJavaApp

Project Overview

This project consists of three main components:

  1. Front-End: A web interface.
  2. Back-End: A Spring Boot application.
  3. JavaFX Application: A JavaFX desktop BoulderDash game.
  4. PostgreSQL database: Data source.
  5. Nginx reverse proxy: Entry point to any request coming into the server

Description

This project is a back-end for Boulder-dash game written in JavaFX. I'm using microservice architecture to put each service into a Docker container for better isolation. Docker compose connects all the containers together in a default bridge docker network. All the requests coming into the server are first processed by nginx reverse proxy, than based on the domain name they go to the dedicated service. Back-end is written in Spring:Boot with Hibernate as JPA, and authorization using JWT token. Front-end is built upon HTML, Bootstrap, JS. To see the site please go ahead to https://www.turbolaft.com, (might be down because is running on my notebook at home xD)

Directory Structure

/FullStackJavaApp/
β”œβ”€β”€ front-end/
β”‚   └── static/
β”‚   └── Dockerfile
β”‚   └── nginx.conf
β”œβ”€β”€ java1_pav0546_projekt/
β”‚   └── src/
β”‚   └── .gitignore
β”‚   └── pom.xml
β”œβ”€β”€ back-end-spring/
β”‚   └── src/
β”‚   └── Dockerfile
β”‚   └── .gitignore
β”‚   └── pom.xml
β”œβ”€β”€ docker-compose.yml
└── nginx.conf

Getting Started

Prerequisites

Run application

To run the application U need to:

  1. Run back-end infrastructure:
git clone https://github.com/turbolaft/FullStackJavaApp
cd FullStackJavaApp
sudo docker-compose build
sudo docker-compose up

Warning

don't forget to change

volumes: 
    - /home/artem/https:/etc/nginx/certs

with the actual path to your SSL certificate and public key where /home/artem/https directory has files certificate.pem and privkey.pem, also in root/nginx.conf change turbolaft.com, www.turbolaft.com with your actual domains

  1. JavaFX Application: To run the JavaFX application, follow these steps:
  • Navigate to the java1_pav0546_projekt directory:
cd /FullStackJavaApp/java1_pav0546_projekt
  • Set Up JavaFX: Download JavaFX SDK: Download JavaFX Extract the SDK to a location on your system (e.g., C:\javafx-sdk-15.0.1).
  • Run the JavaFX Application:
mvn javafx:run

About

This project is a back-end for the game Boulder-Dash. The back-end can store users, their records, and maps related to the records. It keeps track of everything that is going on in the game, ensuring all data is managed efficiently and securely.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors