Native app design and development

From an idea in your notes to an app in people's hands.

I design and build native apps for iPhone, iPad, and Mac, and help existing products move forward. You will test a working version early, stay close to its development, and own the finished code.

CodeMenu workspace on a Mac
Chitneek library with reading progress and saved books on an iPhone
Resso for Mac mapping connected cloud resources

What I have designed, built, and shipped.

These products required different kinds of thinking: organising a feature-rich Mac workspace, visualising connected infrastructure, and bringing reading, scanning, and audio together on iPhone. Their use of AI is different too—each one applies it where it genuinely improves the product.

CodeMenu · macOS

Organising a feature-rich Mac app without losing clarity.

I designed and built CodeMenu as a native macOS workspace for snippets, notes, prompts, images, and small developer tools. The central UX challenge was giving different kinds of content a consistent structure while keeping everyday actions quick to reach.

AI helps document snippets, a custom model identifies programming languages, and an MCP server lets coding agents work with the saved knowledge.

Native macOS · Information architecture · Applied AI · MCP integration

View the CodeMenu project
CodeMenu's multi-window Mac interface

Resso · macOS and iOS

Turning connected infrastructure into an interface people can navigate.

Resso translates servers, apps, providers, deployments, and other assets into a visual relationship graph. The work combines data modelling, visualisation, and a consistent experience across Mac and iPhone.

Its MCP server gives AI agents controlled access to the structured data, making that information useful beyond the app itself.

Native macOS and iOS · Data visualisation · Shared Mac and iPhone UX · MCP integration

View the Resso project
Resso visual map of connected cloud resources

Chitneek · iOS

Bringing reading, scanning, and audio into one iPhone workflow.

Chitneek combines documents, camera scanning, playback, and reading progress in one library. The design challenge was making several kinds of content and interaction feel like one coherent experience.

Local speech models provide high-quality voices entirely offline, without depending on an internet connection.

Native iOS · Document processing · Offline models · Accessible UX

View the Chitneek project
Chitneek library with reading progress and saved books on an iPhone

A new product, or the next step for one you already have.

You do not need a technical specification before we talk. Bring an early idea, a working app that needs attention, or a problem you are still trying to define.

Turn a new idea into a focused first version.

We decide what the app must do first, leave distractions for later, and build something real people can use. This is a practical route for first-time founders who need to learn before investing in a larger product.

Move an existing app forward.

I can join an existing project to build a feature, improve its interface, fix difficult problems, modernise older code, or prepare it for release. I begin by understanding what is already there and agree on a practical next step before making changes.

Give customers or employees a better iPhone or iPad app.

Replace awkward forms, spreadsheets, or an outdated app with a clear experience for iPhone or iPad. The interface is designed around the people using it, including those who are not especially technical, and built to feel at home on their device.

Remove repetitive work with a focused Mac app.

A small desktop tool can save hours when it fits the way your business already works. I can design it to feel at home on the Mac and connect it to the services or data you rely on.

You do not need to choose the technology or know whether the work should be fixed-price or hourly. I will recommend an approach that fits the product, your users, and the work already completed.

You stay close to the work, without having to manage the technical details.

The project moves through working versions, not long periods of waiting. I aim to give you a prototype or useful first build as early as the scope allows, so decisions come from something you can actually try.

We agree on the right next step.

You share the idea, current product, and goals. For an existing app, I also review the relevant code and experience before recommending a scope.

You test a working prototype early.

I build the core experience first and aim to put it on your device as soon as practical. You can respond to a close-to-real product while changes are still easy to make.

We improve it through real use.

You receive updated builds as the project develops. Your feedback guides the interface, behaviour, and priorities before they become expensive to change.

We release or hand over the work.

I help with final checks, store preparation, and handoff. You receive the project files and the code created for you.

A clear price for defined work, flexibility when you need it.

Choose a fixed-price package for a clearly defined new build. Existing apps, evolving features, and work that needs investigation are available at an hourly rate.

Starter

$400

Delivery
7 days
Revisions
1
Source code
Included

Standard

$1,200

Delivery
14 days
Revisions
2
Source code
Included

Advanced

$3,500

Delivery
30 days
Revisions
3
Source code
Included

Existing projects and flexible development

Use hourly development when you need a new feature, UI or UX improvements, bug fixes, code modernisation, AI integration, release help, or ongoing work whose scope may change as we learn more.

$40 per hour
Discuss your project on Upwork

Tell me what you are building or share the current state of your app. I will suggest a package or an hourly engagement before work begins. Upwork keeps the brief, milestones, files, time, and payments together.

Questions people often have before the first conversation.

If yours is not here, email me or send a message through Upwork.

Is a rough idea enough to get started?

Yes. You do not need wireframes or a formal specification. Tell me who the app is for, what problem it should solve, and what you already know. I can help turn that into a practical first scope.

Do you use AI during development?

Yes. I use AI as a coding tool to build prototypes and explore ideas more quickly, so you can try the product earlier and we can shape it around your vision. I started developing software before these tools existed, and I review all code before it becomes part of the delivered app. I pay particular attention to security and other critical paths, and I remain responsible for the engineering, the quality of the design, and how closely the finished experience matches your expectations.

How do we decide what belongs in the first version?

We focus on the smallest useful experience that can test the idea or improve the current way of working. I will point out which features are essential now, which can wait, and where a simpler choice may save time or cost. The goal is to reach a prototype or MVP you can use as early as possible, then learn from the real experience.

How soon will I be able to test the app?

I aim to provide a working prototype or first build as soon as the core experience is ready. The exact timing depends on the project, but you will not need to wait until the end to try it. You will receive updated builds at agreed points and test them on your own devices.

Can you work on an app that already exists?

Yes. I can add features, improve the interface, investigate bugs, modernise older code, integrate AI, or help prepare an existing app for release. I will first review the relevant parts of the product and codebase, then explain what I recommend and whether fixed-price or $40 hourly work is the better fit.

Who owns the finished code?

You receive the source code and project files created for your product once the agreed work is complete and paid for. Any third-party tools or licensed components will be identified clearly.

What happens after the app is released?

We can agree on a separate plan for fixes, updates, and new features, or I can prepare the project for another developer to continue. The right option depends on how actively you expect the product to change.

Tell me what you would like to make.

A few sentences are enough. Share the idea or current app, who it is for, and what you would like the next useful version to change.