Anudeep
All work

StoneX · Stone inspection on iPad / Product design case study

Built around the report that gets stone replaced.

StoneX inspectors check the stone going into Dubai buildings. I designed their iPad app end to end, from paper sketches to the version in production: pin a defect on the floor plan, mark it on the photo, and generate the report a supplier acts on. Then I started the app's move from Flutter to React Native.

Role
Sole product designer · flows, UI, prototype, handoff
Team & time
With PIPRA's engineering team · 2025, migration 2026
Platform
iPad and web
Status
In production

Final capture. StoneX's Inspection Points screen with four numbered pins on an upper-floor plan, beside a report page showing a marble slab photo marked with red crosses and the inspector's comments.

StoneX's Inspection Points screen with four numbered pins on an upper-floor plan, beside a report page showing a marble slab photo marked with red crosses and the inspector's comments.

Scroll horizontally on small screens to inspect details. Press Escape to close.

The shipped app: inspection points pinned on the floor plan, and the report page they become. Test data.
The problem
Every defect an inspector logs has to become a formal report before a supplier replaces anything, and that loop was slow and manual.
What I did
Designed the app from paper sketches to production, rebuilt it when the client changed direction, then started its move from Flutter to React Native with Claude Code.
The result
In production: inspectors pin each defect on the plan, mark it on the photo, and generate the branded report from the same inspection, on iPad and web.

01 / The job

The report is the product.

StoneX inspects the stone going into Dubai buildings: marble, cladding, slabs. Every defect an inspector finds has to reach the supplier as a formal report, because that report is what gets faulty stone replaced, and getting it replaced is what StoneX is paid for. So the app was never just a way to record data. It had to produce the document that moves money and material.

The question I started with
Can an inspector record a defect?
The question it became
Will the supplier act on this report?

02 / On site

Used standing up, on an iPad, often in the sun.

Inspectors aren't at a desk. They're on a construction site holding a tablet, often in bright sun, often with one hand. That set the rules: an iPad-first layout, targets big enough to hit without precision, flows short enough to finish standing up, and photos captured inside the inspection rather than added afterwards.

I'd never inspected stone or worked on a site, so I started from what happens before and after the screen: where the inspector stands, who reads the report, and what the report has to make happen.

03 / Paper first

The flow was the hard part, so it started in pen.

I sketched the inspection sequence on paper first: how many taps it takes to log a defect, and where the photo fits. Only once the sequence held up did it become wireframes, then iPad frames, with a color palette and style guide set early so later screens stayed consistent.

Process capture. Five photographed notebook sketches of the inspection screens, above a row of grey iPad wireframes built from them.

Five photographed notebook sketches of the inspection screens, above a row of grey iPad wireframes built from them.

Scroll horizontally on small screens to inspect details. Press Escape to close.

Notebook sketches of the inspection flow, and the iPad wireframes they became (January 2025).

04 / Decisions

Every screen judged by the report it produces.

  1. 01Templates, not blank forms

    Shipped capture. New Inspection screen: name, project, location, due date and assignee fields on the left, and a Select a Template list on the right with one template ticked.

    New Inspection screen: name, project, location, due date and assignee fields on the left, and a Select a Template list on the right with one template ticked.

    Scroll horizontally on small screens to inspect details. Press Escape to close.

    Starting an inspection: pick a template, and its questions come with it.
    Evidence
    The same defect types come up on project after project, and an inspector on site shouldn't have to remember what to check.
    Decision
    Make templates a first-class object: build the checklist once and reuse it per project, so an inspection opens with its questions already there.
    Trade-off
    Someone has to build a template before the first inspection can start.
    Implemented result
    Every inspection starts from a template. Templates support nine field types and are reused across projects.
  2. 02Pin the defect on the floor plan

    Shipped capture. Inspection Points screen: a list of four points with Normal priority on the left, and the upper-floor plan on the right with yellow pins numbered 1 to 4.

    Inspection Points screen: a list of four points with Normal priority on the left, and the upper-floor plan on the right with yellow pins numbered 1 to 4.

    Scroll horizontally on small screens to inspect details. Press Escape to close.

    Points pinned on the plan, numbered the same in the list. Test data.
    Evidence
    A finding is only useful if the supplier can tell which slab, in which room, it's about.
    Decision
    Place inspection points on the project's own floor plan. Drop a pin or draw an area, and tapping it opens that point's questions and photos.
    Implemented result
    Each finding is tied to a place on the plan, and the list beside it uses the same numbers as the pins.
  3. 03Mark the defect on the photo

    Shipped capture. Report page titled Slab 2, approved with comments: a marble slab photo with red crosses and numbers marking defects, and a comments box listing what to avoid.

    Report page titled Slab 2, approved with comments: a marble slab photo with red crosses and numbers marking defects, and a comments box listing what to avoid.

    Scroll horizontally on small screens to inspect details. Press Escape to close.

    A report page: the marked-up slab and the inspector's comments.
    Evidence
    A note like “chip, lower left” is ambiguous by the time it reaches a supplier, and the report triggers a physical replacement.
    Decision
    Let the inspector mark the defect directly on the photograph, so the evidence and the claim are one image.
    Implemented result
    The marks travel into the report, beside the inspector's comments for that slab.
  4. 04Separate solo and team modes

    Evidence
    A lone inspector wants speed. A team needs roles, assignment and accountability.
    Decision
    Split the product into a single-user mode with no team controls, and a team mode with roles, so neither pays for the other's complexity.
    Trade-off
    Two modes to design and keep consistent.
    Implemented result
    Team mode has five roles, from Admin and Project Manager to Inspector and Document Controller, and single-user mode keeps everything else out of the way.
  5. 05The report is the destination, not an export

    Evidence
    Any gap between what the inspector approves and what the supplier receives costs real money.
    Decision
    Treat the report as the product's endpoint: branded and page-formatted, with a preview that can be edited before it's sent.
    Implemented result
    A manager picks the inspection points, generates a report they can see and edit as it will print, and exports a branded PDF.

05 / The client changed direction

The first version was rebuilt from the ground up.

Partway through, the client asked for a different approach for the whole product, not a tweak. Version 1, a workspace with a project tree in the sidebar, was replaced by Version 2: a home that starts with the main tasks and their counts, and separate single-user and team modes. I've kept the replaced work here, because it's part of how the product got right.

Version 1 capture. Version 1 on iPad in portrait: a sidebar with search, drafts, projects, templates and reports, a workspace tree of inspections, and recently viewed project cards.

Version 1 on iPad in portrait: a sidebar with search, drafts, projects, templates and reports, a workspace tree of inspections, and recently viewed project cards.

Scroll horizontally on small screens to inspect details. Press Escape to close.

Version 1: projects and a workspace tree in the sidebar.

Version 2 capture. Version 2 on iPad in landscape: Start New Inspection and Create New Template buttons above cards counting projects, templates and inspections.

Version 2 on iPad in landscape: Start New Inspection and Create New Template buttons above cards counting projects, templates and inspections.

Scroll horizontally on small screens to inspect details. Press Escape to close.

Version 2: the main tasks first, with counts below.

06 / One codebase

Then I started moving it to React Native.

In 2026 my CEO asked me to bring the AI coding I'd been using on side projects into the team. StoneX was built in Flutter, and the goal was one React Native codebase for iPad and web.

I started the migration with Claude Code in March 2026 and built its foundation: the design tokens and shared components, then login, the dashboard, projects, templates, users, inspections, the question form and the report screen. Because the designer was building the screens, they kept the design system they were drawn with. The engineering team took it from there through iOS and release, and the React Native version is the one in production now.

OptionalThe app in production

A project manager's home: four starting actions and live counts.

Shipped capture. StoneX home for a project manager: Create New Project, Create New Template, Start New Inspection and Create New User, above cards counting projects, templates, inspections, pending tasks and users.

StoneX home for a project manager: Create New Project, Create New Template, Start New Inspection and Create New User, above cards counting projects, templates, inspections, pending tasks and users.

Scroll horizontally on small screens to inspect details. Press Escape to close.

Home for a project manager.

07 / How I worked

Weekly reviews, from Figma to build.

I was the only designer, working with PIPRA's engineering team and reporting to my manager. After handoff I stayed with the build: reviewing it every week, catching drift and reworking screens as feedback came in. The Figma file kept the record, page by page: wireframes, UI design, updated UI, prototype, and after feedback.

08 / Collaboration

I designed StoneX and started its migration. Engineering built and shipped it.

My contribution

  • Studying the inspection job and its report
  • Task flows, sketches and wireframes
  • UI for both versions, on one style guide
  • Prototype and developer handoff
  • Weekly build reviews
  • React Native migration foundation, with Claude Code

Engineering (PIPRA)

  • Flutter app and iDempiere backend
  • Plan canvas, offline sync and PDF export
  • Completing the migration through iOS and release

Client

  • Product direction
  • Feedback on every round

09 / Status

In production.

StoneX app
In production, on the React Native version
Flutter → React Native migration
Shipped with the engineering team

Status as of October 2026.

10 / Learning

A good screen can still be the wrong product. Version 1 worked, and it was replaced because the client's understanding of their own work moved. The version in production is better because the design moved with it.

What I'd do differently

Put the flow in front of the client's inspectors earlier. Version 1 was built before the client's direction changed, and the whole UI was rebuilt; testing with the people who'd use it might have surfaced that shift sooner.