Product design + engineering studio

We build digital products that move businesses forward.

Roaming Minds partners with startups and growth teams to design, build, and scale AI products, mobile apps, games, commerce platforms, web experiences, and APIs.

Trusted across
McLaren F1 a drop every race weekendSTAK · Behring Co intelligent living · 452 apartments1901 Franklin self-running 635-bay garageHALL of GOATS NIL college football gameAI TeamScout AI football recruitingLysted lists worth keeping
15+ yrsshipping products — same founders
0 → 1product launches
Full-stackdesign through deployment
1 teamthe people you meet are the people who build
01 / Capabilities

One team from idea to production.

Product thinking, design, and engineering in the same room — so you move faster without stitching together vendors.

AI Products

Consumer AI apps, agents, LLM integrations, retrieval, and evaluation harnesses — model behavior tested, not vibes-checked.

OpenAIAnthropicPython

Mobile Apps

Polished native and cross-platform products built for real users, app stores, and long-term iteration.

SwiftAndroidReact NativeFlutter

Games

Mobile and browser games, progression systems, live features, and connected experiences.

UnityUnrealWebGL

Web + Commerce

High-converting websites, SaaS platforms, marketplaces, and customer portals.

ReactNext.jsCommerce

APIs + Backend

Scalable services, integrations, data models, and third-party orchestration — the kind that runs unattended.

Node.jsPostgresMongoDBAWS

Need senior product firepower?

We plug into an existing team or own a product from strategy through launch.

See how we engage
02 / Selected work

What we've built. And who it was for.

Named clients, live products, fifteen years of them.

Motorsport / Digital Collectibles / Web3

McLaren F1 — MCL/COLLECT

McLaren Formula 1's digital collectibles platform, powered by Hedera — free limited-edition artwork drops every race weekend of the 2026 season, bringing fans closer to the team. Race weekends don't move; neither do launch dates.

Live at collectibles.mclaren.comA drop every race weekend
ReactHederaPrivyAWS Amplify
Read the case studyClose case study

Authenticated F1 collectibles for McLaren Racing fans: a drop every race weekend, 100K+ redemptions, and no crypto wallet to figure out first.

A list of upcoming collectible drops, each card showing the race it belongs to, its claim window and whether the fan is eligible to claim it.
Upcoming dropsClaim windows and eligibility, race by race.
The season archive as a grid of collectible artworks, with the ones already owned shown in full colour and the missed ones dimmed.
The season archiveWhat you collected, and what you missed.

The challenge

Blockchain-backed ownership normally drags mainstream racing fans through a crypto-first experience before they ever reach the thing they actually wanted.

What we built

The full route from discovery to ownership: featured drop pages, race-specific claim windows, a personal garage, public collector profiles and a season archive.

How it works

Ownership is recorded on Hedera, but sign-in is Privy. Wallet mechanics are folded inside the claim flow rather than presented as separate crypto tooling a fan has to learn.

Client
React 19TypeScript
Services
PrivyEthers.js
Platform
HederaAWS Amplify

The result

Fans claim authenticated collectibles on Hedera without ever meeting a crypto wallet — over 100,000 redemptions, one race weekend at a time.

AI / Sports Tech / Web Platform

AI TeamScout

An AI recruiting advisor built for the athlete — personalised school fit, NIL guidance, coach outreach, and a recruiting plan that updates as their stats do.

Live productAI evaluation engine
ReactNode.jsMongoDBOpenAI
Read the case studyClose case study

A full-stack AI recruiting platform that pulls public recruiting profiles into one conversation and turns them into a ranked shortlist of schools.

The recruiting advisor answering a depth-chart question with a program-by-program breakdown and cited sources.
The advisor, answeringCited sources, and a next step the athlete can act on.
A tracked-schools board scoring each program out of 100 with a fit ceiling, category label and roster-movement tags.
Fit, scored per schoolEvery tracked program scored, with the ceiling and what moved it.
A coach outreach dashboard showing send quota, open and reply rates, and a timeline of delivered, opened and replied events.
Outreach, trackedSends, opens and replies — a workflow, not a chatbot.

The challenge

Recruiting information is scattered across recruiting sites, school pages, stats databases and social platforms. Athletes and families piece it together themselves, then make the decision on it.

What we built

A conversational recruiting advisor on top of a real product: athlete profiles, saved conversations, school tracking, coach-outreach drafting and subscriptions. Not a chatbot with a login screen.

How it works

Public recruiting profiles are parsed, normalised and injected into the model as context. Measurables mentioned in passing during a chat get detected, validated and proposed back as profile edits.

Client
React
Services
Node.jsOpenAIStripe
Platform
MongoDBAWS ECS/Fargate

The result

Research that used to span five tabs happens in one thread that keeps the athlete's stats and priorities between sessions.

Sports / Browser Gaming / Campaign Platform

Philadelphia 76ers — Interactive Games

Three browser games for the Sixers. No app install.

3 games in one hubBrowser, no installBuilt for sponsor activations
PixiJSSpineTypeScriptAWS Lambda
Read the case studyClose case study

Branded arcade games the 76ers can drop into a campaign week — Spectrum Showdown, Spectrum Sprint and Buckets on Broad, all in a browser tab.

The games hub menu on a blue 76ers-branded background, offering three arcade titles to choose from.
The games hubOne hub, three games: Spectrum Showdown, Spectrum Sprint, Buckets on Broad.
A pixel-art basketball game in play, a player shooting at a hoop against a Philadelphia street backdrop with sponsor branding on the court.
Buckets on BroadPixel art, branded audio, sponsor placement.

The challenge

Games tied to campaigns and event nights have to launch fast, carry both the team's brand and a partner's, and run in a browser without asking for an install.

What we built

Multiple browser games behind one branded hub — animated 2D interfaces, sound, sponsor treatments, and the serverless infrastructure they launch on.

How it works

PixiJS and TypeScript carry rendering and game logic, and each game lives in its own repo, so a new title launches without touching the ones already live.

Client
PixiJSTypeScriptGSAPSpine
Services
AWS Lambda
Platform
AWS Amplify

The result

Spectrum Showdown, Spectrum Sprint and Buckets on Broad run in a phone browser — sponsor-ready fan games that launch on a campaign schedule, not an app-store one.

Coaching / Mobile + Web / Chat + Video

Launchgo

Coaching that does not stop when the session ends.

Live at launchgo.comMobile, web, admin, APIChat, video, geolocation
FlutterStream VideoFirebaseTerraform
Read the case studyClose case study

Schedules, deadlines, check-ins and live chat that keep a coaching relationship running on the days there is no session.

A phone screen showing a coaching week laid out day by day, each day listing its scheduled sessions and commitments.
The weekly scheduleThe week as commitments a coach can actually hold you to.
A phone screen listing upcoming assignments with their due dates, flagging which are overdue and which have been submitted.
Upcoming deadlinesAssignments, due dates, overdue work and submissions in one list.

The challenge

Coaching happens in scheduled sessions. The follow-through that decides whether it works happens in the days between them, where the coach cannot see anything.

What we built

A Flutter mobile app, a React client experience, a separate admin platform and the APIs beneath them — carrying schedules, tasks, reminders and progress reporting.

How it works

Chat, video, push, native calling and geolocation sit inside the product rather than beside it. That's the difference between daily accountability and a weekly phone call.

Client
FlutterReact 19TypeScript
Services
Stream Chat + VideoFirebase
Platform
AWS

The result

Schedules, reminders, check-ins, chat and calls in one platform — so coaches keep clients on track between sessions, not just during them.

Gaming / Mobile / Unity + Cloud API

TapCaps

We built the game and the servers behind it.

Unity client + cloud APIIn-app purchases, Apple Sign-In
UnityC#TypeScriptMySQL
Read the case studyClose case study

A Unity mobile game and the cloud API behind it, so characters, purchases and player progress outlive any single session.

A phone screen showing the character selection and customisation screen, with a roster of characters to pick from and a button to start playing.
The character forgeSelection, customisation, and one tap into play.

The challenge

A character-driven game has to stay fast and visual on the device, while accounts, purchases and progress have to persist far beyond one play session.

What we built

The Unity game client and the cloud API underneath it: authenticated requests, relational player data, schema validation, migrations and deployment.

How it works

Client and API are two products with a clean seam between them, so gameplay ships on its own cadence without touching identity, purchases or player data.

Client
UnityC#Unity Purchasing
Services
TypeScriptSST
Platform
MySQL

The result

One team built the Unity client, the in-app purchases and the cloud services underneath, so player identity and progress outlive the session.

Gaming / Sports / NIL — In development

HALL of GOATS

An arcade-style college football game and NIL platform co-founded by Heisman winner Matt Leinart — athlete IP, competition, and rewards, building on the Xai gaming network.

Xai partnershipEx-EA Madden engineering
UnityXaiSolidityAWS
Follow the build
STAK Parking / Mobility / APIs + Payments

1901 Franklin Smart Garage

STAK's side product: a tech-driven, 635-bay parking facility at 19th St BART — real-time availability, access control, payments, and EV charging orchestration. Runs unattended. Has to.

635 bays automatedRuns 24/7 unattended
Node.jsPostgreSQLStripeOCPP
See the garage

Like what you see? The next card could be yours.

03 / How we work

Less agency theater. More shipping.

Small senior teams, direct communication, clear milestones, production-minded execution.

01

Frame

Align on the user, business goal, scope, constraints, and what success actually means.

02

Design

Prototype the experience quickly enough to test decisions before expensive engineering begins.

03

Build

Ship in focused iterations with working software, senior code review before merge, and CI from week one.

04

Scale

Launch, measure, improve, and harden for real-world growth — then stay for the long run.

04 / Technology
ReactReact NativeNext.jsSwiftAndroidFlutterNode.jsPythonPostgreSQLMongoDBAWSOpenAIAnthropicUnityUnrealWebGL
05 / Working with us

Two ways to engage. And we stay for what comes after.

Full ownership

We build it end to end

Strategy through launch and beyond — design, engineering, infrastructure, app-store delivery.

  • Fixed milestones
  • Working software every two weeks
  • Typical: 8–24 week builds
Embedded team

Senior firepower, your roadmap

Our senior engineers and designers inside your team, your standup, where you need force.

  • Monthly, no long lock-in
  • Typical: 1–3 senior people
  • Nearshore time-zone overlap
06 / Why Roaming Minds

Built by people who have sat on your side of the table.

Roaming Minds is a founder-led product studio built around a simple idea: the best development partner understands the product and the business — not just the ticket.

We bring product strategy, design, engineering, and go-to-market perspective into the same room. Fewer handoffs, faster decisions, software built around the outcome you're actually trying to create.

Senior people on the workBusiness-first thinkingTransparent communicationBuilt for iteration
Have something to build?

Bring us the problem. We'll build the answer.

Send two sentences: what you're building and where you're stuck. Within two business days you'll hear back from a founder — not a sales rep — with our honest read and a proposed first call. We take on a limited number of builds at a time, so the earlier we talk, the better.

A senior engineer — not a sales rep — reads every inquiry.

Got it. ✓

Our CEO reads every inquiry. You'll hear from us within two business days to book a 30-minute scoping call.