iOS and Android apps
One codebase producing two real apps, with the platform-specific work done where it shows: navigation, gestures, notifications, and the feel that separates an app from an embedded web page.
Mobile apps for companies, startups and organisations that meet their customers on a phone — built to be used daily, not demoed once.
An app is the most demanding product a company can commission. It is reviewed by two stores, it only updates on a user’s device if the user allows it, it has to work on a poor connection, it has to handle notifications, permissions and payments — and it is compared every day against the best-built apps on the phone, not against your competitor.
We build apps that survive that comparison. It starts by bounding the first flow hard: what the user must be able to do in thirty seconds, and what can wait for version two. What gets built then gets finished rather than nearly finished, and the launch becomes a date rather than a hope.
Most of the apps we build are not alone. There is a web panel where the business handles content and cases, an API between them, and often an existing system that already owns the truth about customers or stock. We build that whole chain, which is why it holds together.
Scope is set per project. These are the parts we work on.
One codebase producing two real apps, with the platform-specific work done where it shows: navigation, gestures, notifications, and the feel that separates an app from an embedded web page.
The server behind the app: accounts, data, sync, permissions, and the administration that lets the business run itself without a developer.
Interfaces drawn for a thumb in motion. We test the primary flow in a clickable prototype before it is built, because a redraw costs a day in design and a week in code.
App Store and Google Play: accounts, certificates, store copy, screenshots, privacy declarations and the review itself — which is where unprepared projects lose weeks.
Push notifications worth receiving, in-app purchases and subscriptions, card payments, Swish, BankID, and connections into the systems you already run.
Apps stop working on their own as operating systems update. We keep versions, dependencies and store requirements current, and measure what users actually do.
Scope drives the price, not the hourly rate. What drives cost is the number of user types, whether the app needs its own login and sync, whether payments are involved, how many external systems it talks to, and how much has to work without a connection. A contained app with one clear primary flow is a different project entirely from a platform with several roles and integrations. We go through scope on a free call and come back with a range and the reasoning behind it.
A contained first version typically runs a few months from start to store. What decides it is how well version one is bounded — not how fast someone codes. So we spend time defining the first flow before development starts, and scope is usually smaller after the first meeting than before it.
Yes, normally from a shared codebase. That produces two real apps at a cost closer to one than two, with the platform differences handled where users actually notice them. When a project needs deep integration with a single platform we build natively in Swift or Kotlin instead, and say why.
Yes, and the accounts and certificates are registered in your name, not ours. We prepare store copy, screenshots, privacy declarations and age ratings, and handle the review. That is the step that most often surprises people: review will reject on details that are cheap to prepare and expensive to discover on launch day.
Yes. The code, the accounts and all the data are yours, handed over in a state where another developer can pick it up — repository, documentation, environments and build pipeline. It is also what we ask for when taking over an app from someone else, and the absence of it is the most common reason a handover costs more than it should.
Yes. We start with a review of the code, dependencies, build pipeline and store accounts, and report what is worth keeping, what has to be replaced and what is urgent. You get that picture before we propose any work — sometimes the answer is that the app should be maintained, not rebuilt.
Launch is usually halfway. Operating systems update every year and store requirements change, so an unmaintained app stops working by itself within a couple of years. We keep it current, measure what users actually do, and build from that rather than from the wish list.
Book a free consultation. We go through the idea, what version one should contain, and what a first step involves.