Mash
A mash profile is an ordered list of rests: the temperatures you hold the grain at and how long you hold each one. A single rest at 67 °C, a step mash that climbs through several rests, a decoction boil: all of them live here as a reusable schedule. Save one and any recipe can start from it. The screen lives at /profiles/mash and has two halves: a list of every profile you can reach, and an editor that opens over it for reading or changing one.
Stock and your mash
Every profile is one of three kinds, shown as a badge on its row.
Global profiles are templates homebre.ws maintains, covering the common schedules. They are read-only at the source.
Custom profiles are ones you built from scratch. They are fully yours.
Edited profiles are global templates you changed. The first time you edit a global, homebre.ws copies it into your library and your changes land on that copy; the global it came from stays as it was. That copy carries the Edited badge and can be reset back to the original.
The actions on a profile:
- Edit
- open a profile and change any rest. Editing a global forks it into your own Edited copy on save.
- Copy
- duplicate any profile into a fresh Custom one of your own.
- Reset to default
- on an Edited profile, discard your changes and revert to the global it came from.
- Delete
- remove one of your profiles. A swipe-to-confirm guards it.
- Default profile
- a toggle in the editor that pre-fills this schedule for new recipes. One profile holds it at a time.
Browsing mash
The list at /profiles/mash shows every profile you can reach, global and custom together.
Header. The title, a count chip reading N profiles, and a New profile button that opens a blank editor. A stat strip sits below it with four numbers: Profiles (the total), Avg peak (°C), the Peak range across your profiles (°C), and Custom (how many are yours).
Filter and search. A Search box filters by profile and step name. A Group control orders the list by Method or None for a flat list. A Type control narrows to Custom, Global, or None for both.
Table columns. On wider screens the profiles appear as a sortable table; on narrow screens it collapses into stacked per-profile cards.
| Column | What it shows |
|---|---|
| Profile | A temperature swatch, the name, and its description. A Default badge marks your default; a Custom, Global, or Edited badge marks the tier. |
| Method | Single infusion, step mash, or decoction, derived from the steps. |
| Steps | How many rests the schedule has. |
| Schedule | A sparkline of the temperature curve and its range, e.g. 63°C–70°C. |
| Peak | The highest rest temperature, in °C. |
| Time | Total schedule length, in min. |
The profile, method, steps, peak, and time columns sort on click and reverse on a second click. A footer line shows how many profiles are displayed out of the total.
- 1Group by Method, or type in Search, to narrow the list.
- 2Click any row to open its editor.
- 3Toggle Default profile so new recipes start with this schedule.
The editor
Clicking a profile opens an editor over the list. It is both the read view and the form: the schedule you see is the one you change.
Provenance. When you open a global profile, a line under the title reads “Editing a global profile — your changes are kept on your copy,” your cue that saving will fork it. Other profiles read “An ordered list of rests — the schedule curve, method, peak and time are derived.”
Schedule readout. Below the steps, a derived panel plots the temperature curve and shows the Peak (°C) and Total time (min). The method, peak, and total all recompute as you edit the steps.
Actions. The footer carries a swatch and a one-line summary, then Cancel and Save changes (or Create profile on a new one). An edited profile also offers Reset to default.
Mash fields
You edit a profile in the same panel whether you’re creating one, changing your own, or forking a global. Temperatures are stored in °C and shown in your preferred unit; a rest you enter in °F is kept internally in Celsius.
Identity.
| Field | What it does |
|---|---|
| Name | What the profile is called. Required. |
| Description | A short note on what it's for and which styles. Optional, up to 500 characters. |
| Default profile | A toggle that pre-fills this schedule for new recipes. |
Mash steps. The step editor holds up to 20 rests; a count reads N / 20 · {method}. Add step adds one, the grip handle reorders by drag, and the trash button removes a step (the last one can’t be removed). Each step is a card:
| Step field | What it does |
|---|---|
| Type | How the rest is reached: Infusion, Temperature, or Decoction. |
| Step name | A label for the rest. Left blank, it auto-names from the temperature and type. |
| Temp | The rest temperature, in °C. |
| Hold | How long to hold the rest, in min. |
| Ramp (optional) | Time to climb to this rest, in min. Blank on the first step. |
| Infuse (optional) | On an infusion step, the water added, in L. |
| Water T (optional) | On an infusion step, the temperature of the infusion water, in °C. |
| Step note | A free-text note on the rest. Optional. |
- 1From the list, click New profile for a blank one, or open a Global profile to fork it.
- 2Name it, then add each rest with its Temp and Hold.
- 3Reorder steps by their grip handle and check the schedule curve.
- 4Click Save changes. A forked global lands in your Custom list as Edited.