Skip to content

Core Workflow & Architecture

BrewTinker is a local-first coffee brewing log and analysis tool for iOS. It does not try to be a bloated coffee encyclopedia or a social check-in feed. Its sole mission is: to turn every brew into data you can learn from, ensuring every future adjustment has clear evidence.


Core Philosophy: The Next Cup Closed Loop

The most common frustration in specialty coffee brewing is: "You brewed an incredible cup last week, but this week you can't repeat it because the grind, ratio, water temperature, time, and bean age are already fuzzy; or you knew the last cup had harsh bitterness, but forgot what to change."

BrewTinker is built around the Next Cup Closed Loop in 4 distinct steps:

  1. Structured Parameter Capture: Record bean name, origin, process, roast date, grinder setting, temperature, ratio, pour stages, TDS, and sensory notes in one streamlined save.
  2. Controlled Variable Tagging: Tag test variables (such as "Grind +1.5 clicks" or "Temp 90°C test") tied to a baseline record.
  3. Next Adjustment Memo: Write down what to adjust next while tasting. When brewing this bean again, the memo is pinned to the top.
  4. 1-Tap Brew Again Diff: Carry previous parameters directly into a new session. On the save screen, BrewTinker automatically highlights what changed this time.

Three Core Tabs Architecture

The UI is strictly organized around three bottom tabs. Settings is tucked away in the top-right corner of Home to prevent accidental interruptions while brewing.

┌──────────────────────────────────────────────────────────┐
│ [ Home ]               [ Brew ]                 [ Log ]  │
│ Trends & Today Status  Focused Session Workspace  Evidence & Export │
└──────────────────────────────────────────────────────────┘
  • 7-Day Rating Distribution: Bar chart visualizing recent brew quality and averages to quickly identify standout cups.
  • Today's Status: Shows daily brew count, coffee bean grams used, and active experiment alerts.
  • Bean Freshness & Inventory: Tracks days off roast and remaining inventory with optional auto-decrement upon saving.
  • Top-Right Settings: Minimalist access to grinder/dripper profiles, BLE device management, Pro status, and legal disclosures.

2. Brew · Focused Single-Screen Workspace

  • All-in-One Dashboard: Dose, water volume, temperature, ratio, and stopwatch timer on a single screen without page flips.
  • Guided Brew Presets: Built-in templates for V60, Hario Switch, AeroPress, French Press, and Espresso.
  • Dynamic Pour Targets: Automatically recalculates bloom, first pour, and final pour targets when you change the dose or ratio.
  • Haptic Feedback: Crisp Taptic Engine vibrations when transitioning between pouring steps.
  • Optional BLE Hardware: Connect compatible Bluetooth scales for real-time weight. Flow-rate curves are derived locally from timestamped weight series.

3. Log · Dense History, Filtering & Evidence

  • Multi-Dimensional Filters: Instantly filter by bean, dripper, brew method, rating, or experiment tag.
  • Comprehensive Sensory Fields: Preserves grind setting, extraction time, TDS percentage, Extraction Yield (EY), flavor wheel tags, and notes.
  • Brew Again Parameter Inheritance: Clone past sessions as a baseline and automatically compute parameter diffs.
  • Open Range Export: Export all records, the current filtered view, or a custom date range.

Data Dictionary

Exported CSV files adhere to a clean schema: one row per brew, one column per parameter.

CSV HeaderData TypeDescriptionExample
timestampISO-8601Brew completion timestamp2026-08-22T08:30:00Z
bean_nameStringCoffee bean nameYirgacheffe Natural G1
originStringOrigin / EstateEthiopia
roast_levelStringRoast degreeLight
methodStringDripper / MethodHario V60
grinderStringGrinder model & settingComandante C40 #18.5
dose_gDecimalGround coffee dose (g)15.0
water_gDecimalTotal water poured (g)250.0
ratioString / DecimalBrew ratio1:16.7
temp_cIntegerWater temperature (°C)90
time_secIntegerTotal extraction time (s)134
ratingDecimalOverall score (0.0 ~ 5.0)4.8
tds_pctDecimalRefractometer TDS (%)1.38
ey_pctDecimalExtraction Yield (%)19.2
experiment_varStringControlled variable tagGrind +1.5 clicks
next_adjustmentStringMemo for the next cupTemp 90C perfect, keep grind

Export Formats & Portability

BrewTinker embraces total data ownership with 3 open formats:

  1. CSV: Tabular text format ready for Microsoft Excel, Apple Numbers, R, or Python (pandas) for multi-variable regression.
  2. JSON: Full hierarchical backup preserving exact timestamps and curve points, ready for seamless re-import.
  3. Plain TXT: Human-readable text format for note-taking apps or quick sharing in messages.

(Note: Fragile PDF export has been removed to guarantee data integrity and eliminate rendering anomalies.)

Local-First · Zero Telemetry · Built for Coffee Enthusiasts