Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/flofriday/cardlabs

A platform to write bots for a cardgame and let them compete against each other.
https://github.com/flofriday/cardlabs

Last synced: 1 day ago
JSON representation

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

Awesome Lists containing this project

README

        

# CardLabs

![Screenshot](screenshot.png)

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

## Run with docker compose

```bash
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:

```bash
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:
```bash
# 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.