Nodi, helping you take care of your face 🦢

A short story on how a skeptic secretly doing routines is now building an app for a market *(I think) nobody is taking seriously.*


Inspiration 💡

A couple of months ago, my girlfriend sat me down to show me a facial lymphatic drainage routine she'd picked up from an influencer on Instagram.

I didn't believe any of it.

I still did the five-minute session with her and told her I'd never do it again.

She said I'd notice a difference if I kept going. Her jawline is genuinely snatched, and I trust her on most things, but this was like pseudoscience to me.

A few days later, I started doing the routine on my own, in the shower, and not telling her. 🤫

Then the algorithm caught on and started feeding me the same content, and I kept watching...

I admit, it actually started to work. My face looked less puffy in the mornings. 👀

What I Learned 🔎

What got my attention was the cult-like following the whole thing had.

Mostly women, deep into this practice, trading routines and obsessing over technique.

So I did what I always do when I see behaviour like that: I looked at how it was being monetized, and if companies were genuinely providing value.

What I found was that the biggest creators in this space sell courses or poorly designed interfaces.

The affiliates and UGC accounts sell gua shas and skincare tools.

Almost nobody was selling an app. 📱

When I looked for apps that pulled the whole practice together, guides, structure, an experience worth opening daily, I found a handful of options, and every one of them was worse than the last. I didn't like the design, it wasn't taking itself seriously, felt like overnight hobby projects with almost no reviews on them.

That told me one of two things: either there's no real opportunity here, or nobody in this space has bothered to take design and value creation seriously. I'm betting on the second.

How I Built It 🛠️

The habit itself, guided facial massage, is easy to copy. Anyone can copy someone and film a tutorial.

What's harder to copy is a high bar for taste, professional-grade guides that aren't shot in bedrooms on iPhones, and an element of wanting to constantly return to them.

These are the areas I knew I had to take really seriously.

On design, the whole animation layer runs on Reanimated worklets on the UI thread. The streak indicator and other procedural effects run through Skia so they can respond to real state instead of just replaying a fixed clip. The mascot, a swan that I chose because Gemini recommended it (it's gorgeous), carries illustration moments through Lottie. A custom paywall and a game-like onboarding experience.

Guilty admission, I have no idea how to draw, design or animate, I just know what looks good and what doesn't. I leveraged Higgsfield's CC MCP and spent days going back and forth, iterating illustrations frame by frame and then stitching them together to animate. It was a long process. 😅

On monetization, the part I'm really proud of: feathers, our in-app currency, can never be bought with money. They're earned strictly by daily sessions, streak milestones, and referrals that only pay out once the invited friend actually becomes a paying subscriber, not just for signing up (I watched Apple reject the "you both get a free month" pattern enough times to build around it from day one).

Feathers get spent on streak protection, unlockable content, cosmetic items, and real physical goods, gua sha tools and nice pillowcases, mailed to people who actually keep the habit. 🎁

I think if this element is executed correctly, churn isn't going to be an issue, and we can grow organically.

Underneath these incentives is RevenueCat, handling entitlements, the trial timeline, and live pricing, which is what let us treat monetization as a product decision instead of an infrastructure problem.

The earning itself is fully deterministic, this is the math I'm using:

$$ F(n) = 2n + w\left\lfloor \frac{n}{7} \right\rfloor + \sum_{t \,\le\, n} b_t $$

Term Meaning
n days of practice so far
2n daily earning, capped per day
w × ⌊n / 7⌋ weekly bonus
bₜ one-time bonus at each streak milestone (t)

Off the app, I rented a professional studio and camera setup to shoot our own guided sessions, with my girlfriend leading them. 🎥

It was slow and surprisingly expensive, but it's ours, and it's not something a competitor can copy by cloning our UI.

I've never held a professional camera or set up professional lighting before, but Claude walked me through it.

It even hallucinated that some equipment is compatible with eachother, when it in fact wasn't, costing me a lot of money.

Challenges I'm Facing 🧩

I'm building an iOS app on a Windows machine with no Mac (sue me, I don't have one, I'm an ex-gamer). Every build ships through EAS to TestFlight in the cloud, so there's no local Xcode to fall back on when something goes sideways.

Writing onboarding copy was harder than it should have been, because I had to write for someone standing exactly where I was two months ago: skeptical enough to hide the fact that I was doing this. I had to stop writing like a founder and write like the guy who didn't believe it either.

The harder design problem was the reward system. It's easy to bolt a currency onto anything. It's much harder to make sure it never turns into pay-to-win, never implies a guarantee we can't back up and hopefully won't get exploited.

What's Next 🚀

Once we launch, the plan is influencer partnerships, including equity splits for the larger creators who already own this audience, alongside UGC and paid acquisition. I've been warming up a TikTok account... If you're a founder who's found real traction with the UGC playbook, I'd be happy to chat. 🤝

Built With

  • expo-blur
  • expo-glass-effect/tabs-(liquid-glass-ui)
  • expo-haptics
  • expo-sdk-57
  • google-gemini-api
  • higgsfield
  • ios-via-testflight-/-app-store
  • javascript
  • lottie
  • next.js-on-vercel
  • postgresql
  • posthog
  • react-native-+-react
  • revenuecat
  • supabase
  • typescript
Share this project:

Updates

Submission history