← all projects

varia

a breathing practice where you watch your heart answer your breath. made for anyone who's found meditation hard.

why i built it

I spent twelve years building mental health apps: mindfulness, biofeedback, CBT. By the end I was disenchanted. It felt like nothing on a phone could really help you, and the kindest thing an app could do was encourage you to put your phone down.

What pulled me back is a different idea of what technology can be: something that serves you instead of holding on to you. A partner for a while, that teaches you something real and then lets you go.

Most tools track your stress. I wanted to flip that: show you your calm, so you learn what it feels like and can find it again on your own.

what it is

Varia Sessions is a practice for learning what calm feels like in your body. You breathe slowly and watch your heart answer. With a heart rate sensor, a visualization grows more beautiful as your heart responds with higher variability: nothing to read, just something to watch while you breathe. Without one, a pacer leads your breath, or your phone listens to it and answers in sound.

Bring your own device: Varia works with the heart rate sensor you may already have, whether that's a chest strap, an arm band, or a watch that broadcasts your heart rate.

The path ends away from the screen. The point is to take the feeling with you: into a hard conversation, a big game, a long day.

It's built to feel spacious from the moment you open it. Quiet screens, no streaks, no badges, nothing asking for more of your time.

Varia Sessions is the first product from The Autonomic Lab, my company.

varia's coming-soon page: 'learn calm by heart.' and a waitlist field, beside a soft purple flower drawn by the visualization
varia sessions: coming soon.
the autonomic lab's coming-soon page: 'the physiology of feeling.' over fine white lines rising and falling like heartbeats on black
the autonomic lab, my company: coming soon.

how it's built

  • typescript
  • expo
  • react native
  • bluetooth le
  • canvas 2d
  • cloudflare workers
  • hono
  • postgres

It is one TypeScript codebase: an app for iPhone and Android, the visualizations as a single canvas runtime that draws the same on every screen, and an API on Cloudflare Workers in front of Postgres. The phone reads every heartbeat from a Bluetooth heart rate sensor, and a session works start to finish with no signal at all.

every beatliveone speceach sessionwhen onlineheart rate sensorbluetooth lephone appexpo · react nativevisualizationscanvas 2d · one runtimeevery screenweb · app · nativeoutboxoffline firstapiworkers · honopostgres
the shape of it: beats in, art out, and nothing lost when the signal drops.
  • heart rate sensor to phone app: every beat
  • phone app to visualizations: live
  • visualizations to every screen: one spec
  • phone app to outbox: each session
  • outbox to api: when online
  • api to postgres

what's next

pre-launch. beta testers on varia.app.