← Back to work
Case 02 · Logistics App · 3 user profiles

From scattered screens to one coherent logistics app.

Client Kuyuy
Role UX/UI Designer
Duration 1 year · 2023
Focus IA · Language · Components
Kuyuy — Native logistics app, Servicios Activos screens
01 — Context

How do you navigate and negotiate in Kuyuy?

Kuyuy connects carriers with cargo generators for domestic and international shipments. The migration to a native app promised scalability, time savings, and support — all in one place.

But the reality was messier. The product had many high-fidelity wireframes, but no global architecture, no interactive prototype, and inconsistent terminology across three user profiles (Carrier, Cargo Generator, and SuperAdmin — each with Admin and Employee variants). What made sense internally didn't make sense to the actual users.

02 — Key decisions

Three calls that reframed the project.

Before fixing screens, the team and I aligned on three design decisions that would shape everything else. Each one addressed a specific point where the experience was breaking down.

Decision 01

Prototype by flow

Instead of waiting for "the complete app," we prototyped one user flow at a time. Validating early beat building everything blind.

Decision 02

Align the language

One label = one concept. The same step shouldn't have 2–3 different names depending on which profile was logged in.

Decision 03

Standardize components

Shared components across profiles, role-specific actions where needed. Less to build, easier to maintain.

03 — My role

Design lead on a cross-functional squad.

I owned the design end-to-end: information architecture, user flows, high-fidelity prototypes, edge-case mapping, and the component library that engineering followed during the build. I worked closely with the PM on scoping and with the client to validate decisions at each phase.

My focus was turning a fragmented web product into a native app that worked for three user profiles — without building three different interfaces to match.

04 — Process

Cleanup → Architecture → Language → Edge cases → Handoff.

The project took roughly a year total. The first 6 months were spent cleaning up the prototype — there were hundreds of screens and flows, nothing was componentized, and we depended on client validations that reshaped flows completely along the way.

Step 01

Cleanup

Audited the existing prototype. Labeled incomplete flows, removed unused screens, flagged what needed rebuilding.

Step 02

Architect

Mapped global information architecture across the three user profiles and their national / international variants.

Step 03

Align language

Defined canonical steps per role. Example: "With Offers" = Offer + Accept / Reject + Counter-Offer.

Step 04

Edge cases

The happy path wasn't enough. Mapped critical cases: rejected documents, incomplete data, on-route incidents, failed closures.

Step 05

Handoff

Delivered interactive prototypes, component library, and validation guidelines for engineering.

05 — How I solved it

What each decision looked like in practice.

One architecture, three profiles

Instead of building three parallel apps, I designed a single information architecture where shared entities (shipments, contracts, messages) looked the same for everyone — but surfaced role-specific actions where it mattered. The SuperAdmin kept full control, Carriers and Generators saw only what they needed to act on.

Kuyuy — Unified information architecture with role-aware actions

One label = one concept

The old product used different terminology depending on who was logged in. I worked with the PM to collapse these into a single vocabulary. Example: "With Offers" means the same thing for every profile — Offer + Accept/Reject + Counter-Offer. Same term, same actions, same validations.

Kuyuy — Unified content guidelines, Active Services & Offer detail

The happy path wasn't enough

I mapped critical edge cases: rejected documents (view missing requirements, retry, or escalate), incomplete data (validate and ticket), on-route incidents (pause, reassign, or escalate to Operations), and failed closures. Good UX covers both the expected and the unexpected.

06 — Deliverables

What I shipped to the team.

Kuyuy is an ongoing project. Here's what my work produced — tangible outputs that engineering and product could act on.

3 → 1
Profiles unified under one architecture
IA
Global information architecture map
Library
Standardized component library
Flows
Interactive prototype + edge cases
Architecture first avoids loose screens and circular discussions. One term, one action — aligning language speeds everything up.
07 — What I learned

Key insights I carry forward.

← Previous case Playful Experiences

Have a product that needs shipping?

Open to full-time, contract, and freelance roles across Germany and remote in Europe.

angie.varelab7@gmail.com