Go to file
Halit Aksoy 077cf0185c fix(keycloak): stop browsers from keeping the old login look
Theme files are cached under a path that only changes with Keycloak's
version, for 30 days, so returning players kept the grey stylesheet.
It is renamed to login.css, and theme files are now cached for an hour.
2026-10-17 03:01:25 +03:00
apps fix(keycloak): stop browsers from keeping the old login look 2026-10-17 03:01:25 +03:00
config feat(keycloak): add Keycloak with guest login extension 2026-10-14 01:46:48 +03:00
docs/specs fix(keycloak): stop browsers from keeping the old login look 2026-10-17 03:01:25 +03:00
packages feat(frontend): simplify the header as in the updated design 2026-10-17 02:59:26 +03:00
.dockerignore feat(backend): replace the Node backend with the Quarkus backend 2026-10-16 11:47:40 +03:00
AGENTS.md fix(keycloak): stop browsers from keeping the old login look 2026-10-17 03:01:25 +03:00
CLAUDE.md docs: add AGENTS.md with setup, checks and pitfalls, and CLAUDE.md pointing to it 2026-10-16 00:44:09 +03:00
package.json build: use local mancala.js and @mancala/core packages 2026-10-14 02:09:05 +03:00
README.md docs: describe the Java backend 2026-10-16 11:53:13 +03:00
TODO.md feat(frontend): simplify the header as in the updated design 2026-10-17 02:59:26 +03:00

Mancala

Mancala is an open source application for playing mancala game online.

Development

The web and mobile apps use the local packages/mancala.js and packages/core through link: dependencies, so build those first:

yarn build:packages        # from the repo root

After changing a package, rebuild it (or run yarn dev in it to rebuild on change); the apps pick up the new dist.

Postgres (games and Keycloak), Valkey (live games and caches) and Keycloak run with Docker Compose. Create apps/.env once, then start them:

cd apps
cat > .env <<EOF
POSTGRES_PASSWORD=postgres
KEYCLOAK_DB_PASSWORD=keycloak
KEYCLOAK_ADMIN_PASSWORD=admin
MANCALA_DB_PASSWORD=mancala
EOF
docker compose up -d --build postgres valkey keycloak

Postgres is on localhost:5433 and Valkey on localhost:6379; the backend's defaults point there. Then run the backend (Java 25 and Quarkus, see apps/backend/README.md) and the web app:

cd apps/backend && ./mvnw quarkus:dev     # port 5005
cd apps/frontend && yarn dev              # port 1234

Docker images for the backend and frontend are built from the repo root:

docker build -f apps/backend/Dockerfile -t jhalitaksoy/mancala-backend .
docker build -f apps/frontend/Dockerfile -t jhalitaksoy/mancala-frontend .