What we do
We are a small studio that designs, builds and ships complete products — the iPhone app, the website, and the cloud service humming behind both.
01 · Apple platforms
Native apps for iPhone, iPad, Apple Watch and Mac
We build native Apple software in Swift and SwiftUI — from a period tracker with a watchOS companion to a real-time multiplayer word game and a macOS menu-bar utility. Native where it counts, tuned for iOS 26 and the Liquid Glass design language.
- Swift 6
- SwiftUI
- SwiftData
- watchOS
- RealityKit
- HealthKit
- RevenueCat
- Fastlane
In our work: Simply Track's watchOS companion, Word Challenge on the App Store, and Simply Zone on the Mac.
SwiftUI across the Apple ecosystem
One codebase spanning iPhone, iPad, Apple Watch and Mac, with watchOS complications, widgets and Siri Shortcuts where they earn their place.
Data, health and 3D
SwiftData and Core Data persistence, Swift Charts insights, opt-in HealthKit and EventKit, and RealityKit scenes composited straight into the interface.
Payments and identity, done properly
Subscriptions and in-app purchases through RevenueCat and StoreKit, Game Center sign-in, and APNs push handled with token-based keys.
Built for a global audience
String Catalogs drive localisation into eight languages, with a custom pre-rendered narration pipeline when robotic on-device speech will not do.
Release automation baked in
Fastlane and Xcode Cloud generate device-framed screenshots, manage metadata across storefronts, and drive submission — so shipping is repeatable, not heroic.
02 · Web
Web applications and content platforms, SPA to static
Two lineages: signals-based Angular product consoles, and Next.js and React content platforms built for scale and SEO. When a single web codebase should also reach the App Store, we ship it there with Capacitor.
- Angular 21
- React 19
- Next.js 16
- TypeScript
- Tailwind CSS 4
- RxJS
- SignalR
- Capacitor
In our work: ToolChain's Angular 21 console, the Next.js sites behind word-challenge.com and simply-track.com, and Simply Read shipped to iOS with Capacitor.
Angular product SPAs
Angular 21 with standalone components, signals and RxJS on CoreUI, secured with OpenID Connect and PKCE — the shape of a real multi-tenant SaaS console.
Next.js and React platforms
Next.js 16 and React 19 on Tailwind CSS 4, statically exported or incrementally rendered, with typed content pipelines and a committed database as the source of truth.
Real-time in the browser
Live ops feeds, dashboards and multiplayer wired over SignalR and WebSockets, so the interface reflects the backend the moment it changes.
Programmatic SEO at scale
Tens of thousands of generated pages with structured data, sitemaps and breadcrumbs — the machinery behind sites that rank rather than just exist.
Hybrid delivery with Capacitor
When it makes sense, an Angular app is wrapped in Capacitor for a native iOS shell — one codebase, a proper App Store presence.
03 · Backend & cloud
.NET APIs and cloud infrastructure that scale quietly
ASP.NET Core services built with clean, vertical-slice architecture and CQRS, backed by the right database for the job — relational or single-table — and deployed to AWS with least-privilege access and continuous delivery.
- .NET 10
- ASP.NET Core
- MediatR
- SignalR
- PostgreSQL
- DynamoDB
- AWS
- Docker
In our work: Word Challenge's .NET 9 multiplayer backend, ToolChain's multi-tenant .NET 10 platform, and Simply Choose's real-time decision service.
Clean, testable .NET APIs
ASP.NET Core minimal APIs with MediatR CQRS, FluentValidation and RFC-7807 problem details, organised as vertical slices rather than a tangle of layers.
Real-time by design
SignalR hubs power multiplayer duels, live ops consoles and tenant-scoped dashboards — pushing state to clients instead of polling for it.
The right data model
PostgreSQL with EF Core — optimistic concurrency, tenant-scoped filtering and exclusion constraints — or DynamoDB single-table designs where throughput rules.
Authentication you own
An embedded OpenIddict authorisation server on ASP.NET Core Identity, issuing tokens over auth-code with PKCE, with tenant-aware onboarding.
AWS, containerised and continuous
Deployed to Lightsail, Amplify and S3 with scoped IAM identities, Docker, automatic TLS and GitHub Actions running the build and tests on every push.
04 · Design & delivery
Product design and delivery, sketch to the App Store
We take products end to end: shaping the idea, designing the interface, building the system and shipping it. Design systems, privacy-first architecture, real accessibility, and quality wired into the pipeline rather than bolted on afterwards.
- Design systems
- Prototyping
- Localisation
- Accessibility
- Testing
- CI/CD
- App Store delivery
In our work: Word Challenge's real-time multiplayer engine, eight-language localisation across Simply Track, and privacy-first architecture in Simply Calm.
Discovery and product design
From a first sketch to a shippable design system — reusable component languages that let each product keep its own character while sharing one foundation.
Adaptive, human-centred behaviour
Interfaces that respond to the person using them, like an adaptive learning engine that quietly raises or lowers challenge and never shows a child a "wrong" screen.
Privacy-first architecture
On-device data, optional accounts and opt-in integrations by default — privacy treated as a design constraint, not a policy page.
Quality wired into the pipeline
Swift Testing and XCTest, xUnit, Karma and Vitest suites running in CI, alongside evidence-linked planning that separates what is proven from what is aspirational.
Localisation and accessibility
Interfaces localised into eight languages and built to be legible, operable and understandable — the details most people never consciously notice.
How we build
From discovery to the App Store
A simple loop we run on every engagement — kept honest by writing down what is proven at each step, not just what we hope is true.
- 01
Discover
We dig into the problem, the people and the constraints — and write down what is genuinely proven versus assumed.
- 02
Design
Interface, data model and architecture take shape together, on a design system built to grow with the product.
- 03
Build
Small, well-tested increments in Swift, .NET and TypeScript, integrated continuously so nothing drifts out of sync.
- 04
Ship
Automated screenshots, metadata and deployment — to the App Store, to AWS, or to the edge — then iterate on what we learn.
The tools we reach for
Have a product in mind?
From a first sketch to the App Store, we design and ship software that feels effortless. Tell us what you are making.