Inspiration

People practice mindfulness for different reasons. Maybe you’re lying awake at 2 a.m. with a racing mind. Maybe you’re sitting in the car after a difficult conversation. Or maybe you’re trying to calm your nerves before a big presentation.

Most meditation apps give you a large library and ask you to choose what fits. But when your mind is already full, that is just another decision to make.

ZenGPT works differently. You simply describe what’s going on in your own words, and ZenGPT creates a meditation for that moment.

Our goal is simple: to give people a daily moment of stillness that fits what they need, instead of another one-size-fits-all meditation.

What it does

ZenGPT is a guided meditation app for iPhone. It starts with a short check-in conversation about how you feel and what is happening. From there it picks a practice and builds a session around it: an opening that responds to what you shared, a carefully crafted meditation, and a closing that eases you back into your day.

The library covers six families of practice: regulate, focus, feel, connect, rest, and explore. It uses techniques such as breath focus, body scan, visualization, loving-kindness, noting, and grounding. Each practice comes in 5, 10, and 15-minute versions and is labeled with the feelings it is written for (anxious, ruminating, exhausted, lonely, grieving, and more) and the moments it suits (bedtime, awake at night, before a challenge, after a conflict, and more).

You can add calming background sounds while you listen, reflect afterward, revisit past sessions, and build a streak. Your feedback shapes future recommendations. If a check-in suggests an immediate safety concern, the app shows crisis resources instead of a meditation. ZenGPT is a wellness app, not therapy or medical care.

How we built it

The iOS app uses Expo and React Native. Convex is the reactive backend, Better Auth handles accounts, RevenueCat handles subscriptions, and ElevenLabs provides the voice.

The core design decision was how to split the work between people and AI. A meditation generated entirely by AI sounds appealing, but it falls apart where meditation matters most: rhythm. The length of a pause, the pace of a sentence, the word that lets you exhale are all craft, and AI can't replace that today. What AI does well is listen to someone, understand their situation, and speak to it naturally at the start and end of a session. So each session has two parts:

  • The meditation body is handcrafted and rendered once. We built an internal studio for writing, rendering, testing, and publishing the library. Scripts are written one spoken line at a time, with pauses either set to an exact length or spread across the remaining time so that a 10-minute session really lasts 10 minutes. The ElevenLabs voice settings (stability, style, and speed) are tuned for a slow, steady delivery, and every body is listened to and checked before it goes live. After that, one rendering serves every listener.
  • The opening and closing are personal and generated on the spot. When you start a session, an AI model writes a title, an opening that reflects what you shared, and a closing that leads you back into your day. Only those two short clips are voiced live, in the same voice as the body, so the session sounds like one continuous guide from start to finish.
  • Matching happens during the check-in conversation. The check-in agent sees only published, fully rendered practices, with their family, feelings, moments, technique, cautions, and length, plus how recently you heard each one. It proposes one specific meditation, and the app confirms that the meditation is still available before playback starts.

This combines the strengths of both. Human craft handles the timing and word choice, and AI handles the personal fit.

Challenges we ran into

Keeping personalization affordable. Generating 10 to 15 minutes of new audio for every session would be slow and expensive, and the quality would vary from one session to the next. Rendering the long body once and generating only a few seconds of personal audio per session keeps the cost per session low and sessions quick to start, while each one still feels made for the listener.

Building the library itself. Getting the timing right is slow, detailed work. We tuned how long each pause should be, how the voice handles a particular line, and whether a word lands softly or abruptly, going through many rounds of editing the script, rendering it, and listening back. We built the studio so that cycle could happen quickly.

Accomplishments we're proud of

ZenGPT launched on the App Store on September 2, 2026. The whole experience is live, from check-in through listening, reflection, history, and subscription.

Alongside the launch we built an audience with short-form content about stress, overthinking, and rest. By September 29, about 1,450 people were following ZenGPT across YouTube, TikTok, and Instagram. These followers are not app customers yet, but they show that the problem resonates, and they give us a direct line to the people we are building for.

What we learned

Personalization doesn't mean generating everything. The best results came from deciding carefully where AI belongs and where human craft should stay. We also learned that the first step matters as much as the audio: the check-in and the recommendation are what make a meditation feel like it was made for you. Going through App Review also taught us to explain personalization clearly and to ask for consent before any data reaches an AI service.

What's next

This is the first version. Next, we are growing the practice library, improving recommendations using session feedback, and measuring how many people who find us through our content go on to start a meditation and come back for more.

In later versions we want to expand the reflection side: helping people talk through what they are going through, not only sit with it. For now, ZenGPT is focused on one daily moment of stillness, personalized in a way that, as far as we have seen, other meditation apps don't offer.

Built With

Share this project:

Updates

Submission history