Rummikub Backend Service
This project is a backend service for a game application. It handles user management, game logic, matchmaking, and achievement assignment. The service is built using Java, Spring Boot, and Gradle, and it interacts with a SQL database to store game data and user information.
-
Pipelines: https://gitlab.com/kdg-ti/integratieproject-2/2024-2025/team12/back-end/-/pipelines
-
Test Coverage: https://kdg-ti.gitlab.io/-/integratieproject-2/2024-2025/team12/back-end/-/jobs/8771848251/artifacts/build/jacocoHtml/index.html
To install and run the project locally, follow these steps:
-
Clone the repository:
git clone https://gitlab.com/kdg-ti/integratieproject-2/2024-2025/team12/back-end.git
-
Build the project using Gradle:
./gradlew build -
Run the application:
./gradlew bootRun or press the run button in your IDE -
The docker compose file in the infrastructure map should be running
-
Make the "test" user with password test in keycloak
Java 21 The docker compose file in the infrastructure map should be running
To use the API endpoints of the application in the http tests, the application should be running and you always get a token from the first endpoint above in the file from keycloack. If you want to run all the tests at once you dont need to have anything up because the tests run in a container of their own.
- Implement additional game features
- Add more achievements and rewards
- Enhance security and performance
We welcome contributions! Please fork the repository and submit a pull request. Make sure to follow the coding standards and include tests for your changes.
To run the tests, use the following command:
./gradlew test
there is also gitlab ci/cd that runs the tests automatically in the pipelines in gitlab and sends reports of everything to the artifacts.
- Chahid Ahdour
- Lewis Ion
- Yannick Vandenbulcke
- Jarno Fret
Not all issues for the application have been implemented these will be carried on to the next sprint.