A simple, distributed timer, originally designed for bouldering for competitions.
- Create timers with custom sequences
- Indication sound at one minute and a countdown at five seconds
- Show the timer on many devices
- Time is synced accurately even when the clock of the devices is out of sync
- set custom background colors
- change color or labels without restarting the timer
- start the timer at a scheduled point of time in the future
- prevent a device showing the time from going to sleep
You can use our publicly hosted instance free of charge: timer.itsblue.de
If you'd like to self-host, you can also use docker:
-
- install docker and docker-compose on your system (follow the official guide)
-
- create the folder
/opt/distributed-timer
- create the folder
-
- create the file
/opt/distributed-timer/docker-compose.yml
with this content:
services: timer: image: ghcr.io/dorianim/distributed-timer:latest environment: JWT_KEY: some-random-string REDIS_STRING: "redis://:@redis/0" ports: - 3000:3000 depends_on: - redis redis: image: docker.io/redis volumes: - ./redis-data:/data
Make sure, to replace the JWT_KEY.
- create the file
-
- start the container:
docker-compose up -d
- start the container:
To build a binary, you need:
- cargo >= 1.67.1
- npm >= 8.19.2
To build, run cargo build --release
in the repo.
To build the docker image, simply run docker build . -t boulder-timer
in the repo.