matthew game
  • Python 87%
  • HTML 13%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-22 02:10:14 +01:00
.gitignore actually usable 2026-08-22 02:10:14 +01:00
app.py actually usable 2026-08-22 02:10:14 +01:00
bio.html actually usable 2026-08-22 02:10:14 +01:00
config.json actually usable 2026-08-22 02:10:14 +01:00
matthew-game.service actually usable 2026-08-22 02:10:14 +01:00
README.md actually usable 2026-08-22 02:10:14 +01:00

matthew game

a simple game where you retrieve pieces of matthew

setup

before setting this up, you must have a functioning matrix server to handle federation keys. this only handles a profile.

  1. clone this repository and enter it

  2. make a python virtual environment and install the dependencies

python3 -m venv venv
source venv/bin/activate
pip install waitress flask
  1. configure it if you want, i left a default config in config.json. bio.html can be used to customise the user bio.

  2. run the server with waitress-serve --listen=127.0.0.1:8080 app:app. if you're on systemd, see matthew-game.service for an example unit.

  3. reverse proxy /_matrix/federation/v1/query/profile to the game:

location /_matrix/federation/v1/query/profile {
	proxy_pass http://127.0.0.1:8080;
}

it may be possible to limit the user like so:

location /_matrix/federation/v1/query/profile?user_id=@target:example.com {
	proxy_pass http://127.0.0.1:8080;
}

but i haven't tried this.

todo:

  • a script to upload and manage the tiles
  • go rewrite