Self-hosted coffee roasting software, written in Rust

Understand every roast. Build on every batch.

Follow the roast live, compare it with the ones before, and turn a good result into a profile you can roast again. Roastwarden brings roaster logging and control, green coffee and bag labels together on your own server, and works with Artisan's profiles and machines.

Status: In daily use. Public beta coming. Releases

The Roast page during a roast driven from a profile: bean temperature, rate of rise, heater and fan on a live chart, with the next events and the drive's state beside it.
A roast driven from a profile, three minutes in.

What it does for a roaster

See what's happening

Bean and environment temperature, rate of rise, heater and fan on one live chart, with the profile behind it, the roast's landmarks and its phase times, on a laptop or a phone.

Learn what changed

Each roast read against cited references and your own roaster's history, roasts compared side by side, and a model of your roaster that predicts first crack and scores itself. Every line says where it came from.

Repeat what worked

Make a profile from a good roast and roast it again: the server follows it with heater and fan where your roaster takes commands, and shows it as a guide where it does not.

Keep the batch together

Green coffee with its cost, planned roasts and batch numbers, roasted coffee as it rests, and a bag label whose QR code leads back to the roast.

Watch a roast

A recorded roast played back at 20 times its speed, on the chart the dashboard draws: bean temperature against the profile, rate of rise, heater and fan, the phases and landmarks as they come. Point at the chart to read any moment.

Kenya Nyeri, light for espresso: 100 g on a fluid-bed roaster driven from a profile. First crack at 7:43, DROP at 10:05, 14 % weight loss.

The roast runs on the server

Roastwarden is a small server next to your roaster. It talks to the roaster and does the work: recording, following a profile, alarms, fan assist, auto events and cooling. A browser is only a window onto it, so a tab closing, a laptop sleeping or a phone locking doesn't touch the roast, and any number of screens can watch the same one. You stay at the roaster; your screens don't have to.

From green bean to bag

Everything a home roaster or a small roastery records, in one place, and nothing you don't use: modules switch off what a home install doesn't need.

The roast page

A live chart that fits a laptop screen without scrolling: bean and environment temperature, rate of rise, heater and fan, the profile behind, landmarks, phase times and projections. It works on a phone too.

More

Profiles and drive

Seed profiles by roaster kind, Artisan .alog import and export, profiles made from a good roast, and shared by a link that another Roastwarden imports.

More

Prediction and warnings

The roaster's own model, fitted from its roasts: bean temperature two minutes ahead, first crack and DROP, and a warning before the rate of rise crashes, flicks or stalls.

More

Connect your roaster, choose the control

A new roaster only records. You switch control on when its hardware takes commands, set limits for each output and a fan floor, and one gate in the server checks every command against them.

More

Green coffee and stock

Purchases with their cost per roast, coffee added from a supplier's link, a shopping list that becomes cart links, planned roasts and batch numbers, and roasted coffee with its rest window.

More

Reports, typeset

PDF reports from a built-in Typst engine: a roast on a page, two roasts compared, a coffee, a profile's roasts, a month or a year, the inventory, a roast-day plan to fill in, cupping sheets and traceability from lot to bag.

More

Bag labels

Labels designed in Typst, from the built-in designs or your own in Label Studio, printed over IPP on label sheets, with a public page behind each QR code.

More

Artisan friendly

Profiles and alarm files both ways, a machine picked from Artisan Roaster Scope's catalogue, and Artisan itself as an extra screen over Modbus.

More

Yours to keep

Self-hosted in one container on a Raspberry Pi or any Linux machine, SQLite with nightly backups and a checked restore, no telemetry and open file formats.

More

Ask your agent

Roastwarden is made to be used by AI agents as well as people. Any agent that can run commands, such as Hermes, Claude Code or Codex, uses it through the roast command and a skill that teaches it the rules. Say it in your own words and it keeps the records; it never runs the roaster.

Each agent has its own token with only the access you give it, changes can wait for your approval, and the audit log shows everything it did. Set up an agent in three commands.

What it looks like

Screenshots of the dashboard, from a real install.

Will it work with my roaster?

Logging needs a roaster that sends its temperatures in one of these ways. There are no drivers to wait for: you map its readings by configuration, and a check tells you what works.

Control needs a roaster that also takes commands for heater and fan (or burner and air). Until you switch it on, Roastwarden only records.

Connect your roaster: what Roastwarden expects, and a tested example for each transport. Or try it first on the simulated roasters built into the server.

Read the user guide for a roast from charge to drop, or the install guide to see what running it takes.

Questions, or a roaster you would like to connect? Write to hello@roastwarden.com.