Skip to content

nshweta90/Mancala-kalaha-game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mancala-Kalaha game:

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.

Installation and Running the game:

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

Game Instructions:

-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.

Technologies used :

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)

Game View :

Landing Page-

image

image

Game Board-

image

image

Design Details :

Game Data model design

image

Game Business logic Services design -

image

Entity Relation Design-

image

Future enhancement scope:

  • 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).

About

Mancala -Kalaha Game

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published