Web Based game to Play traditional Mancala/Kalaha . The backend uses spring boot framework to expose the REST APIs for the game. More details of the API can be explored with Swagger Url of application.
Instructions for running in Eclipse IDE:
Download the zip then unzip or clone the Git repository.
Open Command Prompt and Change directory to folder containing pom.xml.
Open Eclipse
File -> Import -> Existing Maven Project -> Navigate to the folder where you unzipped the zip.
Select the project and import.
Choose the Spring Boot Application file (search for @SpringBootApplication) in project explorer.
Right Click on the file and Run as Java Application.
Instructions for running from command line:
Ensure Java 17 installed on system and JAVA_HOME correctly set.
Ensure maven is installed on system.
clone or download and extract the project Zip on local system.
Build application-
Go to project directory where pom.xml located.
build the project ->mvn clean install
Run Application-
start spring boot app -> mvnw spring:boot run
or
create jar - mvnw clean package
Run jar - java -jar target\<app-generated-jar>.jar
-load the game from http://localhost:8080/ or the hosted url http://<host>:<port>
-Enter user names and start the game.
-You will be indicated with player who is next to play.
Backend :
-Spring boot 3,
-Java version 17,
-Db h2 database
Supporting tools :
-Swagger -Open API documentation
-Mapstruct for Dto Entity Mapping
Frontend: HTML,CSS,JavaScript (vanilla)
Landing Page-
Game Board-
Game Data model design
Game Business logic Services design -
Entity Relation Design-
- Game GUI enhancement for more readability and good user experience.
- Enhancement for using database other than in-memory DB to be production ready.
- Enabling 4 player mancala feature and possible application scaling with docker containerization.
- Ability to choose the existing players to start new Game.
- Introduce feature to play against computer (System as second player).