Case study

RoxTarget: passkeys in a live consumer app.

RoxTarget is a Hyrox race-time predictor and training planner for athletes and coaches, and it's ours. We built it on Seamless so real people would sign in with it every day, and every rough edge they hit gets fixed in Seamless before it reaches you.

iOS live, 10 October 2026Web liveAndroid in progress

Signing in, start to finish.

RoxTarget sign-in screen on iPhone: email or phone, with a passkey used when the device holds one
RoxTarget offering to add a passkey right after the account is created
The iOS Save a passkey sheet with Face ID, shown over RoxTarget

An email or phone number to start, a six-letter code the first time, then a passkey saved with Face ID. No password anywhere.

And what it protects.

RoxTarget Today screen on iPhone: predicted finish time and the workout of the day
RoxTarget race predictor on iPhone: predicted finish, goal gap and a chart over time
RoxTarget race day sheet on iPhone: pacing and split times in race order

What RoxTarget users see once they're signed in. Every one of these screens sits behind Seamless.

The setup

One login across web and mobile.

  • Sign in with a passkey, a magic link, a one-time code, or Google and Apple.
  • The web app uses secure cookies. The phone app uses tokens. Same account either way.
  • Athletes, coaches and organizers each see only what their role allows.
  • No passwords are stored anywhere in the system.
How it fits together
iOS and web appRoxTarget
RoxTarget APINode SDK at /auth
Seamless AuthDedicated server
The numbers

Real numbers, with the date.

25usersAs of 13 October 2026
166sign-ins since launchAs of 13 October 2026
142sign-ins with a passkeyAs of 14 October 2026

Want the same in your app?

RoxTarget uses the same open source packages you can install today. One command gets you a working stack to try it on.

$ npx seamless-cli init my-app
Start the quickstartStar it on GitHub

Want help hosting or migrating? Say hello