This a simple self hosted talist. It is intended to run on a Raspberry, Onion Omega etc. and serves a page which shows which homebrewed beers you have on tap.
- Display as many taps as you like and have screen space for
- Layout even works on small (like 7") tablets (ideal for your appartement kegerator)
- Simply choose the brewfather batch per tab with a tap on the screen
- Beer details are loaded from brewfather
- The pint glass changes its color based on the beer color
- Full screen mode also enables a wake lock, so your taplist stays awake
- Server based, so you can showcase your taplist in multiple locations
- Completely self hosted (except for the brewfather part)
You need to have yarn and vue cli installed to build the frontend and go to build the backend. Additionally you need to have packr2 since the frontend is bundled directly with the binary
A simple make build
will build everything and create a binary called taplist
in the root directory.
Taplist is configured via env variables. All variables need to be prefixed with TAPLIST_
.
Variable | Default | Required | Description |
---|---|---|---|
KEGERATOR_NAME | My Smart Kegerator | no | The name of your kegerator/brewery to be displayed on the taplist |
NUM_TAPS | 2 | no | The number of Taps your kegerator has |
HTTP_ADDR | :8080 | no | The address the server listens on |
LOG_LEVEL | info | no | How detailed you want the log to be |
NO_AUTH | false | no | Disable authentication for mutations and queries which might be sensitive |
HTTP_USER_HEADER | X-Auth-User | no | In which header to look for the admin user name |
ADMIN_USER | no | Name of the admin user | |
DATA_PATH | ./data/data.json | no | Where to persist the data about the taplist |
BREWFATHER_USERID | no | If you want to add batches from brewfather to taps, specify your brewfather user id | |
BREWFATHER_SECRET | no | Brewfather API secret | |
FRONTEND_PATH | no | Use your own frontend instead of the embedded one | |
BREWFATHER_BREWERY | no | Brewery name to use if tap data comes from brewfather |