Skip to content

HyperSpaceGamePanel: A game panel built with Spring Boot and Thymeleaf, designed to manage game servers and improve their performance, stability, and accessibility.

Notifications You must be signed in to change notification settings

abdalla435/GamePanel

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HyperSpaceGamePanel

HyperSpaceGamePanel: A game panel built with Spring Boot and Thymeleaf, designed to manage game servers and improve their performance, stability, and accessibility.

Contributors Forks Stargazers Issues

About The Project 🤔

After trying out various game-server management panels, I realized that most of them lacked the features and user-friendliness that I was looking for. So, I decided to take matters into my own hands and create HyperSpace Game Panel - a comprehensive and intuitive game-server management panel that would cater to the needs of both novice and experienced users alike.


⚡ Introduction to HyperSpaceGamePanel:

HyperSpace Game Panel is an open-source project designed to provide a web-based control panel for game servers, allowing server administrators to manage their game servers more efficiently. The project is written in Java and Spring Boot, making it easy to deploy and customize.

The panel comes equipped with a range of features, including real-time server monitoring, player management, game settings configuration, and plugin installation. The user-friendly interface and intuitive navigation make it easy for server administrators to perform these tasks quickly and efficiently, without the need for any technical expertise.

HyperSpace Game Panel also includes an authentication system that allows multiple users to access the panel, each with their own set of permissions. This makes it easy for server administrators to delegate tasks and responsibilities to other team members, without worrying about unauthorized access to critical server settings.


💻 Tech Stack:

This project is built with a powerful combination of these tech stacks.

Java
Spring Boot
Spring Security
Bootstrap
Thymeleaf
MySQL
Lombok
JSch
Toastr


🌟 Getting Started 🌟

To run this project locally or on production, please follow the instructions below:

Prerequisites

Make sure you have the following installed on your machine.

  • Java Development Kit (JDK) version 11 or higher
  • MySQL Server 8.0

Installation

  1. Clone the repository to your local machine using the command below:

    git clone https://github.com/mharisraza/HyperSpaceGamePanel.git
  2. Navigate to the src/main/resources and open the application.properites file and update the following details.

    spring.datasource.url = jdbc:mysq://<host>:<port>/<db_name>
    spring.datasource.username = <username>
    spring.datasource.password = <password>
  3. Make sure you have configured Constants.java See Configuration method to configure the settings..

  4. Now run the project, make sure you have installed all the dependencies using Maven.

If succeeded, go to http://localhost:8080 and you'll redirect to installation page where you can register yourself as an admin.


Configuration:

HyperSpaceGamePanel requires some configuration to run application properly without any errors that include email configuration. You just need to change the details to your needs and that's it!

Navigate to /src/main/java/com/hyperspacegamepanel/helper and open Constants.java file and update the following details:

// mail sender setting
 public static final String EMAIL_FROM = "<your_email>"; // the mail you want to send from
 public static final String EMAIL_APP_PASSWORD = "<your_email_app_password>"; // app password (You can get it from the Google's Account Setting)
 
 // tickets setting
 public static final int TICKET_MESSAGE_SIZE = <NUMBER_OF_MESSAGE_SIZE>; // change to your needs.
 public static final String TICKET_MAXIMUM_MESSAGE_ERROR = "<MAXIMUM_MESSAGE_ERROR>" // default: Maximum <NUMBER_OF_MESSAGE_SIZE> characters are       allowed;
 
 // Secret key for password encoder 
 public static final String PASSWORD_ENCODER_SECRET_KEY = "<SECRET_KEY>";

 // if you wish to change the scripts files keys or folder location, you'll need to update here, by default //they are in the correct place.
 public static final Map<String, String> SCRIPTS_FILES = new HashMap<>();

 // key will be script file name or whatever we want to be, value will be the location of the local scripts file
 static {
     SCRIPTS_FILES.put("VPS_INFO_SCRIPT", "./scripts/getvpsinfo.sh");
     // add as much as scripts you want.
 }

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b <branch_name>)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin <branch_name>)
  5. Open a Pull Request

(back to top)


Special Thanks to 🙏🎉:

Stargazers:

Stargazers repo roster for @mharisraza/HyperSpaceGamePanel

Forkers:

Forkers repo roster for @mharisraza/HyperSpaceGamePanel


Made with 💖 by Muhammad Haris 🙋‍♂️

About

HyperSpaceGamePanel: A game panel built with Spring Boot and Thymeleaf, designed to manage game servers and improve their performance, stability, and accessibility.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 86.8%
  • CSS 9.0%
  • JavaScript 3.5%
  • Shell 0.7%