UX design process for apps: the steps that matter
The UX design process for apps, step by step: research, flows, wireframes, prototypes, testing, UI and handoff, and what each step produces.
Read the post ↗
How to build a design system for startups: which tokens and components to define first, how to document them, and when the system is worth growing.
The phrase “design system” makes many founders picture a big company with a dedicated team and a public website full of guidelines. A design system for startups looks nothing like that. It is a small, shared set of decisions about colour, type, spacing and components that every screen is built from. Done early, it saves time on every screen after the first ten. Done too big, it becomes a side project that slows the product down. This post covers what to build first and what to leave for later.
A design system has three layers:
color-primary or space-4 instead of raw numbers.The design file and the code both use the same tokens and components. That shared vocabulary is the point. A designer says “secondary button” and the engineer knows exactly what to build.
A startup’s product changes every week. Without a system, each new screen gets designed from scratch, and small differences pile up: four shades of grey, three button heights, two ways of showing an error. Users notice the inconsistency even if they cannot name it, and engineers waste time rebuilding the same parts.
A small system early gives you:
This is why we set the visual identity and the design system before high-fidelity screens on every project at Batriders, then design every screen from it.
You do not need everything at once. Build in this order and stop when the product stops needing more.
Define a short list and stick to it.
| Token group | Start with |
|---|---|
| Colour | One primary, one accent if needed, a neutral scale of about 6 to 8 greys, and success, warning and error colours |
| Type | One or two typefaces and about 5 to 7 sizes, each with a set line height and weight |
| Spacing | A scale built on a base unit, such as multiples of 4 or 8 |
| Radius | Two or three corner sizes |
| Elevation | Two or three shadow levels, or none |
Plan for dark mode now, even if you ship it later. Naming tokens by role (surface, text-muted) instead of by colour (grey-100) makes a dark theme a matter of swapping values.
Start with the parts nearly every screen uses:
Each component needs its states designed, not just the default. A button that has no loading state will get one invented in code, and it will not match.
Write one short page per component: what it is for, when not to use it, and an example. Add a few patterns that cut across components, such as form validation, onboarding and confirmation of destructive actions. Keep it in the place your team already looks, whether that is the design file, a wiki page or a component explorer in the codebase.
A startup rarely needs to invent its own date picker. Start from a mature base and style it with your tokens:
This gets you accessibility, keyboard support and edge cases for free, and your brand still comes through in colour, type and a few signature components. If you are still choosing a mobile stack, our comparison of native vs cross-platform app development may help.
A design system that only lives in the design file drifts. Keep the two sides aligned:
This works best when designers and engineers sit in one team, which is how our product design work runs.
For a first release, a design system for startups rarely needs more than a page of tokens and 10 to 15 well-made components. Grow it when you notice the same pattern designed twice, or when a new designer or engineer joins and needs a reference. If the system takes more time to maintain than it saves, it is too big for your stage. Our post on MVP feature prioritization applies the same thinking to features.
As soon as the first few screens are designed. Extract the tokens and shared components from those screens, then design the rest of the product from them.
A UI kit is a set of ready-made components. A design system adds the tokens behind them, the rules for using them, and the matching code, so design and build stay in step.
A small one, yes. Tokens and a handful of core components take little time and make every later screen faster and more consistent.
Figma is the most common choice for the design side, with variables for tokens and components for reusable parts. On the code side, store tokens in one place your web or mobile app reads from.
A good startup design system is the smallest set of decisions that stops your team from making the same decision twice.
The UX design process for apps, step by step: research, flows, wireframes, prototypes, testing, UI and handoff, and what each step produces.
Read the post ↗MVP vs prototype vs proof of concept explained: what each one proves, who it is for, what it costs in time, and how to choose the right first step for your app.
Read the post ↗Projects from $5,000 · Contracts and payments in USD