Gesha is an app for your modded espresso machine. It integrates with a MAX31855 and a relay to control brew temperature, and lets you track variables like dose, grind, ratio, etc. to make perfecting your espresso easier.
- Finely control brew temperature with PID control
- Easily override the PID by sliding all the way to the bottom (off) or the top (on)
- Keep a history of past shots to help you dial in
- Nothing to install or configure with a zero dependency binary
- Configurable with a simple YAML file, or through the app's settings screen.
- Written Go and TypeScript for a fast and finely tuned experience
- Download the latest release for your architecture
- Move the download to your desired server and run
sudo ./gesha install
sudo systemctl enable geshato make sure Gesha runs on boot
sudo systemctl daemon-reload
sudo systemctl start gesha
The install command will copy the binary into
/usr/local/, install a systemd unit, and a default configuration file.
If you do not have a distribution that uses systemd, you can run gesha directly with
Developing the UI
The UI is written in HTML, CSS, and TypeScript. It doesn't use a web framework and relies on modern CSS and JS APIs.
- Safari latest
- FireFox latest
- Chrome latest
I wanted to try something new with the development toolchain, inspired by Snowpack.
Install hammer with
go get github.com/lukechannings/hammer/cmd/hammer
To start developing, run
make dev and load up localhost:4321.
The app should load instantly. As you edit, reload the browser to update.