Sign inSign up

yieldtoben/roborally

By yieldtoben

Updated 2 days ago

A browser based RoboRally implementation written in the Meteor Javascript framework.

Image
1

3.7K

yieldtoben/roborally repository overview

roborally

Browser-based RoboRally board game implementation built with Meteor 3. The UI is React with Tailwind CSS, and the components, game models, game logic and server methods are TypeScript. The app is written as ES modules throughout and compiled with Meteor's modern build stack — Rspack for bundling, SWC for transpilation and minification, PostCSS for Tailwind.

port

This project is a Meteor 3 port of the blinkingnoise/roborally Meteor 2 fork of the original marcelpanse/roborally Meteor-based project. The Meteor 3 version has some significant refactoring, but the core game logic and models remain mostly unchanged. The main focus of this port is to update the codebase to be compatible with Meteor 3 and modern dependencies. A new repository was created for this port to avoid confusion with the original Meteor 1 and 2 versions.

Goals of this project:

  • use the latest Meteor release (3.5 as of July 2026)
  • modernize the codebase and update dependencies (done — the Blaze/Bootstrap UI layer, the last part, moved to React and Tailwind in September 2026)
  • stabilize gameplay
  • run in docker

running

With docker compose

services:
  mongo:
    restart: unless-stopped
    image: mongo:7.0
    container_name: mongo
    ports:
      - 27017:27017
    volumes:
      - mongo-data:/data/db
      - mongo-configdb:/data/configdb
    networks:
      - rrnet

  roborally:
    restart: unless-stopped
    image: yieldtoben/roborally:latest
    container_name: roborally
    ports:
      - "3000:3000"
    depends_on:
      - mongo
    environment:
      - MONGO_URL=mongodb://mongo:27017/roborally
      - ROOT_URL=http://localhost:3000
#      - MAIL_URL=smtp://user:password@mailhost:port
#      - DEBUG_LOG=true
      - >
        METEOR_SETTINGS={
          "ALLOWED_EMAILS": [],
          "ALLOWED_DOMAINS": [],
          "VERIFY_EMAILS": false,
          "MAIL_FROM": ""
        }
    networks:
      - rrnet

volumes:
  mongo-data:
  mongo-configdb:

networks:
  rrnet:
    driver: bridge

The image is a production Meteor bundle, so it reads its settings from METEOR_SETTINGS as above. docker-compose.yml in the repo is the same file.

development

Setup, the dev Docker image, tests and lint/format are in CONTRIBUTING.md.

license

GNU General Public License (GPL) 2.0

Tag summary

Content type

Image

Digest

sha256:49f5ec74f

Size

153 MB

Last updated

2 days ago

docker pull yieldtoben/roborally