Roastit live-roasting app shown across three phone screens

Roastit

From documenting the roast to supporting the decisions inside it

Roastit is a live roasting companion for home coffee roasters who want more consistent results without professional equipment. It combines a guided timer, phase-aware prompts, manual heat and fan tracking, cooling guidance, and a roast history that can be reused during the next batch.

I designed and built it for a problem I had myself: I knew the coffee roast I wanted to make, but I could not reliably reproduce it.

Roastit is a live roasting companion for home coffee roasters who want more consistent results without professional equipment. It combines a guided timer, phase-aware prompts, manual heat and fan tracking, cooling guidance, and a roast history that can be reused during the next batch.

I designed and built it for a problem I had myself: I knew the coffee roast I wanted to make, but I could not reliably reproduce it.

Overview

Role:

Solo designer & developer

Scope:

Research, product structure, interaction design, UI, testing, AI-assisted wireframing and coding

Research, product structure,

interaction design, UI, testing

Platforms:

iOS / Android (React Native, Expo)

Status:

Shipped, active iteration

Timeline:

3 months

The Problem

I created Roastit after struggling to reproduce the light-to-medium coffees I liked - the kind of cup you might get from a roaster like Intelligentsia. I lacked professional equipment and years of experience. What I had was a clear sense of the coffee I wanted, but no reliable way to achieve it roast after roast.


I was struggling to find a tool that could identify the current phase, warn that first crack might be close, or show how a heat adjustment affected the session.


Home-roasting discussions confirmed that this uncertainty was not only mine. Identifying first crack came up repeatedly, especially among newer roasters without reliable bean-temperature readings. The equipment I was using had an active community, making it a practical starting point for machine-specific guidance.


The product question became: How can a lightweight app help someone make the next decision while the roast is still happening?

I created Roastit after struggling to reproduce the light-to-medium coffees I liked - the kind of cup you might get from a roaster like Intelligentsia. I lacked professional equipment and years of experience. What I had was a clear sense of the coffee I wanted, but no reliable way to achieve it roast after roast.


I was struggling to find a tool that could identify the current phase, warn that first crack might be close, or show how a heat adjustment affected the session.


Home-roasting discussions confirmed that this uncertainty was not only mine. Identifying first crack came up repeatedly, especially among newer roasters without reliable bean-temperature readings. The equipment I was using had an active community, making it a practical starting point for machine-specific guidance.


The product question became: How can a lightweight app help someone make the next decision while the roast is still happening?

Recording what happened vs. deciding what to do next

BEFORE

Three tools, disconnected: useful only after the roast was already over.

WITH ROASTIT

One screen, live - guidance arrives while there's still time to act.

From Logging to Live Guidance

The first concept was a detailed post-roast logger with a light interface, long form, ratings, notes, and a roast analyzer. It was more structured than a Notes document, but still asked users to reconstruct the session afterward.


The next direction added a dark orange visual system, AI-generated profiles, image analysis, onboarding questions, and a broader flow. It clarified the real priority: more features did not help when I was listening to the beans, watching the timer, and deciding whether to adjust the machine.


The third direction moved the product into the roast itself. The timer became central, connecting phase guidance, heat and fan controls, first-crack marking, alerts, cooling, history, and re-roast. This was the direction I refined and shipped.

The first concept was a detailed post-roast logger with a light interface, long form, ratings, notes, and a roast analyzer. It was more structured than a Notes document, but still asked users to reconstruct the session afterward.


The next direction added a dark orange visual system, AI-generated profiles, image analysis, onboarding questions, and a broader flow. It clarified the real priority: more features did not help when I was listening to the beans, watching the timer, and deciding whether to adjust the machine.


The third direction moved the product into the roast itself. The timer became central, connecting phase guidance, heat and fan controls, first-crack marking, alerts, cooling, history, and re-roast. This was the direction I refined and shipped.

Four stages, one refocusing decision

Bare log

Light dashboard, long post-roast form (initial wireframe)

Light dashboard, long post-roast form

1

Records what already happened

Expanded concept

AI chat exploration, image analysis (deferred as future features)

AI chat exploration (differed for future)

2

AI added possibilities, not live guidance

Working exploration

Real timer, heat/fan, cooling, safeguards

3

Built to be useful

Shipped

Focused, roaster-aware coaching companion

4

iOS + Android, App Store live

Repeated use beside the roaster is what moved stage 3 into stage 4.

PRODUCT EVOLUTION

From a detailed logger to live guidance

Captured after the roast

Post-roast logger

Expanded the feature set

AI-assisted concept

Focused on the live moment

Live roasting companion

Scoping a Dependable V1: the AI Question

I explored AI-generated profiles, bean-bag analysis, and roast-color analysis in Figma and through a mock service, but it was not a functioning model integration or part of the shipped flow.

AI seemed useful but added cost, complexity, and a trust problem. I did not yet have the data or model behavior needed to guide a physical process involving heat and an unrecoverable batch of beans.

I deferred AI and shipped a manual-first V1: something I could use immediately and learn from through real roasts. I can revisit AI when I have more data and confidence in the product’s viability.

I explored AI-generated profiles, bean-bag analysis, and roast-color analysis in Figma and through a mock service, but it was not a functioning model integration or part of the shipped flow.

AI seemed useful but added cost, complexity, and a trust problem. I did not yet have the data or model behavior needed to guide a physical process involving heat and an unrecoverable batch of beans.

I deferred AI and shipped a manual-first V1: something I could use immediately and learn from through real roasts. I can revisit AI when I have more data and confidence in the product’s viability.

The core workflow requires no model or account. An optional QR scanner opens a coffee bag’s webpage but does not extract or populate its data.

The core workflow requires no model or account. An optional QR scanner opens a coffee bag’s webpage but does not extract or populate its data.

Design Strategy

Four rules kept the product focused

1.

Manual-first

Setup, live roasting, saving, and reviewing had to form a complete product without AI feature filling the gaps.

2.

Equipment-specific

Fresh Roast guidance could be more specific because I owned the machine and could test it. Other roasters received a broader workflow rather than guidance I could not stand behind. (Other specific roaster types are a future consideration).

3.

Concrete over vague

The interface uses times, current settings, suggested settings, and explicit actions instead of phrases such as “soon” or “medium heat.”

4.

Remove what does not fit

Onboarding was reduced from three questions to one: what do you roast with?

Roaster type only

The Core Experience

The shipped loop follows the physical roast:

The core experience

The shipped loop follows the physical roast:

WHAT SHIPPED

The core loop

Setup

enter bean information, choose roast level, confirm roaster, batch weight, and target time.

Live Roast

follow the timer and phase progression, adjust heat and fan, and respond to crack and development prompts.

Cool

move into a machine-aware cooling countdown with clear state changes.

Re-roast

replays heat/fan log at same timestamps

History

review the chart and see brew suggestion

Save

keep the phase record, crack timing, settings, notes, and an optional photo.

Six screens, one loop : every path either moves the roast forward or feeds the next one.

one tap carries the full context over

WHAT SHIPPED

The core loop

Setup

enter bean information, choose roast level, confirm roaster, batch weight, and target time.

Live Roast

follow the timer and phase progression, adjust heat and fan, and respond to crack and development prompts.

Cool

move into a machine-aware cooling countdown with clear state changes.

Re-roast

replays heat/fan log at same timestamps

History

review the chart and see brew suggestion

Save

keep the phase record, crack timing, settings, notes, and an optional photo.

Six screens, one loop: every path either moves the roast forward or feeds the next one.

one tap carries the full context over

Designing through real roasts

DESIGNED BESIDE THE ROASTER

From an anticipated window to a remembered event

Roastit does not detect first crack. It helps the roaster notice it, mark it, and use it.

FIRST-CRACK DECISION FLOW

No reliable bean sensor

1

Prompt

New roast: around 5:00

2

Listen

The user hears the popping sound

3

Mark

Actual first crack is timestamped

4

Guide

Development and alerts follow the event

5

Remember

The next re-roast uses the real mark

WHAT CHANGED THROUGH REAL ROASTS

Each problem surfaced during use and led to a specific change in the build.

PROBLEM ENCOUNTERED

I needed to adjust the machine mid-roast

SHIPPED CHANGE

Heat and fan steppers

Every adjustment is timestamped and replayable

PROBLEM ENCOUNTERED

Second crack means different things by roast level

SHIPPED CHANGE

Roast-aware behavior

Light: hidden · Medium: warning · Dark: milestone

PROBLEM ENCOUNTERED

One cooling duration did not fit every setup

SHIPPED CHANGE

Roaster-specific countdowns

Fresh Roast: 2:20 · Other: 5:00

PROBLEM ENCOUNTERED

Stopping cooling left scheduled alerts active

SHIPPED CHANGE

Notification cleanup corrected

Stopping cooling now cancels pending alerts

PROBLEM ENCOUNTERED

Very short test sessions cluttered history

SHIPPED CHANGE

Under-four-minute guard

Restart · Discard · Save anyway

These were problems encountered during repeated real roasts and corrected in the build—not findings from a formal usability study.

Designing through Real Roasts

DESIGNED BESIDE THE ROASTER

From an anticipated window to a remembered event

Roastit does not detect first crack. It helps the roaster notice it, mark it, and use it.

FIRST-CRACK DECISION FLOW

No reliable bean sensor

1

Prompt

New roast: around 5:00

2

Listen

The user hears the popping sound

3

Mark

Actual first crack is timestamped

4

Guide

Development and alerts follow the event

5

Remember

The next re-roast uses the real mark

WHAT CHANGED THROUGH REAL ROASTS

Each problem surfaced during use and led to a specific change in the build.

PROBLEM ENCOUNTERED

SHIPPED CHANGE

I needed to adjust the machine mid-roast

Heat and fan steppers

Every adjustment is timestamped and replayable

Second crack means different things by roast level

Roast-aware behavior

Light: hidden · Medium: warning · Dark: milestone

One cooling duration did not fit every setup

Roaster-specific countdowns

Fresh Roast: 2:20 · Other: 5:00

Stopping cooling left scheduled alerts active

Notification cleanup corrected

Stopping cooling now cancels pending alerts

Very short test sessions cluttered history

Under-four-minute guard

Restart · Discard · Save anyway

These were problems encountered during repeated real roasts and corrected in the build—not findings from a formal usability study.

Visual System

The final palette uses a warm near-black base, cream for content and actions, copper for the primary brand/action accent, amber for attention and roast-phase cues, and blue for cooling.

The final palette uses a warm near-black base, cream for content and actions, copper for the primary brand/action accent, amber for attention and roast-phase cues, and blue for cooling.

Refined into what shipped

SHIPPED - "newspaper / book on dark"- my take on resembling an artisan coffee shop

Warm near-black background, cream as the single accent, roast-level colors carry meaning

#191817

#F2E8D6

light

medium

dark

#191817

light

dark

#F2E8D6

medium

Tienne

Display & headings - serif, editorial

Exo

Body & UI - clean, functional

Borders stay hairline and warm-toned throughout - only the light/medium/dark roast cards get a brand-color border.

Final Experience

Each screen focuses on one task: configure, roast, cool, save, or review. The live view keeps timing, guidance, alerts, and controls together, while saved details support review and re-roast.


The iPad version works but still scales the phone layout; a more intentional side-by-side tablet layout remains future work.

Each screen focuses on one task: configure, roast, cool, save, or review. The live view keeps timing, guidance, alerts, and controls together, while saved details support review and re-roast.


The iPad version works but still scales the phone layout; a more intentional side-by-side tablet layout remains future work.

Refined into what shipped

One hierarchy across phone and tablet

Generate your roast

Live Roast

Saved Roast Details

iPad-Live Roast

Launch and Early Results

Roastit launched on iOS in July 2026, followed by an update shortly after launch. Android entered closed testing. I designed, built, debugged, and shipped the product independently with the assistance of Claude Code and other AI agents.


The App Store Connect reporting window available during this case study showed:

Roastit launched on iOS in July 2026, followed by an update shortly after launch. Android entered closed testing. I designed, built, debugged, and shipped the product independently with the assistance of Claude Code and other AI agents.


The App Store Connect reporting window available during this case study showed:

Early signals, reported without inflation

IMPRESSIONS

681

PRODUCT-PAGE VIEWS

96

FIRST-TIME DOWNLOADS

25

DISPLAYED CONVERSION

6.58%

I am keeping the metrics literal because I have not confirmed shared reporting periods or denominators, so I am not deriving a funnel.


One downloader described Roastit as offering “easy and clear options to track a roast” without a system like Artisan. It is useful feedback from one downloader.

The timer, guidance, and notifications have made my light-to-medium roasts feel more consistent. Without controlled before-and-after data, I treat this as a personal outcome, not a measured claim.

I am keeping the metrics literal because I have not confirmed shared reporting periods or denominators, so I am not deriving a funnel.


One downloader described Roastit as offering “easy and clear options to track a roast” without a system like Artisan. It is useful feedback from one downloader.

The timer, guidance, and notifications have made my light-to-medium roasts feel more consistent. Without controlled before-and-after data, I treat this as a personal outcome, not a measured claim.

Limitations and Next Validation

Roastit has been shaped through repeated real-roast use, a couple of informal sessions with home roasters, and a structured interface review. I am continuing to recruit participants to understand how well the experience translates beyond my own workflow.

Future sessions will focus on clarity of first-crack marking, heat/fan guidance, the transition to cooling, Re-roast expectations, and which bean details are needed before versus after roasting.

The review also created a practical backlog: clarify transitional actions, strengthen accessibility, support long bean names, improve the tablet layout, and lead the App Store gallery with the live-roast screen.

AI roast assistance and other specific roasters remain a later exploration, once real roast history can support specific, explainable recommendations.

Contact

Email

arpine.uiux@gmail.com

Arpine Azatyan

Available for UX/UI and Product Design roles

©2026

Contact

Email

arpine.uiux@gmail.com

Arpine Azatyan

Available for UX/UI and Product Design roles

©2026

Contact

Email

arpine.uiux@gmail.com

Arpine Azatyan

Available for UX/UI and Product Design roles

©2026