gmi.software
Services

Start with the outcome you need to achieve.

Explore all services
Core areas
Mobile appsApp takeover, development and iOS/Android releasesOnline stores & B2B platformsOnline store development and integrations with business systemsIntegrations & back officeERP, inventory, payments and APIs
Start hereMobile app code auditBefore the first release or when a live app needs repair
Complementary services
App maintenanceSLA, monitoring, stability and continuous improvementE-commerce mobile analyticsFunnel measurement and data-led decisionsAI & automationFrom workflow and business case to productionProduct Discovery & DesignScope, prototype and delivery planWorkshops & estimationRisks, decisions and fixed-price scope
Not sure where to start?Book a short consultation
Projects

Explore products shaped by clear decisions and measurable outcomes.

All case studies
Delivered products

Case studies

Interfaces, scale and delivery outcomes
Świat KsiążkiMobile loyalty programme and product catalogueSFDCommerce, loyalty and everyday motivationSTS / Solarts3D solar installation configurator
Looking for inspiration? Explore the app ideas library
Technologies

We choose the stack around the product, scale and risk.

Explore the full technology stack
Featured
MobileReact NativeScalable iOS and Android productsMobileExpoFaster releases and updates for React Native apps
Web & commerce
Next.jsReactTypeScriptMedusaJS3D configurators
Backend & cloud
Node.jsNestJSPostgreSQLDockerAWS
Quality
PlaywrightMaestro
Tools

Estimate costs and organise decisions before a call.

3 free tools
App cost estimateEstimate scope and budgetOpen toolE-commerce AI adviserMap decisions, risks and optionsOpen toolE-commerce TCO calculatorCompare SaaS and custom over 5 yearsOpen tool
Already have a result or brief?Discuss your outcome
Company

Meet the people, working model and principles behind GMI.

About usAccountability, history and proofCareersHow we work and open applicationsContactNew projects, support or partnershipsBlogNotes on app and commerce development
ENGet in touch
Services
Mobile appsOnline stores & B2B platformsIntegrations & back officeStart hereMobile app code auditApp maintenanceAI & automationAll services
Projects
Technologies
React NativeExpoNext.jsNode.jsFull technology stack
Tools
App cost estimateEstimate scope and budgetE-commerce AI adviserMap decisions, risks and optionsE-commerce TCO calculatorCompare SaaS and custom over 5 years
Company
About usCareersContactBlog
Get in touch
Back to blog
Product design
Published: July 29, 2026
8 min read

What is a mockup, and why should you create one before coding?

A mockup shows product layout, hierarchy and visual direction before expensive implementation starts. This guide explains the difference between sketches, wireframes, mockups and prototypes, and when each one is enough.

Mikołaj Lehman, CEO & Founder, GMI Software
Mikołaj Lehman
CEO & Founder, GMI Software

In brief

A mockup shows product layout, hierarchy and visual direction before expensive implementation starts. This guide explains the difference between sketches, wireframes, mockups and prototypes, and when each one is enough.

A mockup shows product layout, hierarchy and visual direction before expensive implementation starts. This guide explains the difference between sketches, wireframes, mockups and prototypes, and when each one is enough.

A mockup is a visual design, not a working app

A mockup is a static, detailed picture of a future screen. It shows typography, colour, spacing, content, hierarchy and the presentation of key actions. It should not pretend to be a working product: it does not include complete logic, integrations or system behaviour.

A sketch captures an idea quickly. A wireframe organises structure and priorities. A mockup adds visual treatment, while a prototype connects screens into a testable flow. Choose the artefact based on the decision the team needs to make.

What you can validate before writing code

A mockup aligns stakeholder expectations, tests whether the primary action is visible and shows whether real content fits the layout. This is the right moment to reorder fields, shorten a form or remove an element that does not support the user goal.

It does not replace a technical test. If the risk is integration, performance, hardware or data processing, build a proof of concept. If the risk is understanding the end-to-end journey, use a clickable prototype.

  • Information hierarchy and CTA clarity
  • Consistency across views and states
  • User reaction to layout and language
  • Presenting the direction to investors or the team

How not to confuse a polished picture with a finished product

For every mockup, define error, loading, empty-data, permission and small-screen states. Also identify the system of record behind each piece of information. Without this, the design covers only the happy path and pushes difficult decisions into development.

A good process does not end with approving a picture. It ends with validated assumptions, open risks and acceptance criteria. That turns the mockup into a risk-reduction tool rather than decoration.

Related reading

  • Product design and UX/UI

    Discovery, flows, prototypes and validation before expensive implementation.

  • Prototypes and MVPs

    A bounded scope, validation of the critical risk and a plan for the next iterations.

  • Discovery–Design–Technology process

    One decision loop connecting business, design and technology.

Content updated: July 29, 2026

Mikołaj Lehman, CEO & Founder, GMI Software
Mikołaj Lehman
CEO & Founder, GMI Software

Mikołaj Lehman is the CEO and founder of GMI Software. On the blog, he covers decisions around mobile apps, ecommerce and digital product delivery.

  • Mobile apps and React Native
  • Headless and B2B ecommerce
  • MedusaJS
  • Digital product delivery

Google Preferred Sources

See GMI more often in Google

Add gmi.software as a preferred source. Google may highlight our new articles more often in Top Stories and supported AI experiences.

Share article:

Related articles

Product design

Product design vs product development: responsibilities and delivery order

Product design defines the problem, experience and behaviour of a solution. Product development covers building, releasing and operating the full product. Both disciplines need one shared loop.

→
Mobile apps

Adding one React Native screen to an existing Swift or Kotlin app

What to establish before adding a React Native screen to an existing Swift or Kotlin app: navigation, lifecycle, session, state and acceptance criteria.

→

Let’s discuss your project.

Tell us what you need. We’ll suggest the next step.

[email protected]
gmi.software Sp. z o.o.ul. Jana Heweliusza 11 / 819
80-890 Gdansk, Poland
Rated 5.0 out of 5 on Google5.017 client reviews on Google
© 2026 gmi.software Sp. z o.o.
Privacy PolicyTerms