flofriday / CardLabs

A platform to write bots for a cardgame and let them compete against each other.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CardLabs

Screenshot

A platform to write the best card playing bots. Bots are written in CardScheme, a self written scheme interpreter.

Run with docker compose

docker compose up --build

The frontend will start on http://localhost:3000.

Run locally

If you want to run the services locally you will need a local rabbitmq instance. The easiest way to get one up running is with:

docker run -it --rm --hostname my-rabbit --name some-rabbit -p 5672:5672 -p 15672:15672 rabbitmq:3-management

Next you can start all the servers, each in their own terminal session:

# Start the management
cd management
gradle bootRun --args='--spring.profiles.active=local'

# Start the gameserver
cd gameserver
./mvnw compile exec:java

# Start the frontend
cd frontend
npm run dev

The frontend will start on http://localhost:3000.

Continuous deployment

The lecture provided us with an GitLab instance and resources on a kubernetes cluster. Both are no longer available but if you want to check out the CI pipeline for GitLab and the deployment config, you can find them in .gitlab-ci.yml and kubernetes.yaml respectively.

About

A platform to write bots for a cardgame and let them compete against each other.


Languages

Language:Kotlin 73.7%Language:TypeScript 21.0%Language:Python 4.5%Language:Scheme 0.5%Language:Dockerfile 0.1%Language:CSS 0.1%Language:JavaScript 0.0%Language:PowerShell 0.0%