AI · Interaction Design · Full-Stack Build
Live: rill.today
Role: Product Design · Prompt Engineering · Frontend Development
Timeline: Mar 2026 – Present (built in 3 weeks, live and maintained)
Stack: HTML/CSS/JS · DeepSeek API · Cloudflare Pages · Vercel
What RiLL is
RiLL is a symbol-based reflection tool that uses tarot symbolism with AI to help people think clearly in moments of anxiety. Not prediction. Reflection.
Why I built it
AI fortune-telling has quietly become one of the most-used AI categories in China. Tarot apps, BaZi calculators, AI horoscope readers. Millions of Gen Z users open them daily for guidance on relationships, careers, decisions.
I was one of them.
I'd open these apps when I felt unclear about something specific. A career decision I couldn't shake. A relationship I was questioning. A heaviness I couldn't name. They never solved anything. They made me circle inside. The more I asked, the less I trusted my own answer. They were optimized for engagement, not for actually helping me make better decisions. They were toxic, by design.
In two years managing wealth at a Chinese bank, I sat across from thousands of people across every income level. What I learned is simple. Anxiety isn't a financial class problem. Whether you have nothing or everything, you still face the same internal struggle, the same noise, the same uncertainty about where to put your trust. The most well-resourced people I met were not the most settled.
So I built RiLL, the AI reflection tool I wished existed.
Design constraints
1. Symbols offer perspective, not conclusions. The AI reads cards, never the user's mind.
2. Every reading must end with action. RiLL exists to send users back to real life, not keep them inside the app.
3. Users should need RiLL less over time, not more.
4. Engagement to the right depth, not beyond. I designed a soft hook in the opening copy to bring users in. People in distress don't always start easily. But after five readings in a session, the experience ends. The user is sent back to their day. Engagement is a tool to deliver value, not the value itself.
Anti-engagement, by design.
Trade-offs
The biggest engineering decision was on prompt design. The product's whole identity lives in the prompt, so I committed to bilingual prompt engineering from day one.
I iterated through eight versions, with Chinese and English co-evolving in parallel rather than translating one to the other. Different languages carry different emotional registers. A translated prompt would have lost the trust dynamic the product depends on.
It cost me real time. But it's why both Chinese and English users describe the tool with the same words: 温暖有力 ("warm and grounded"). Words I had written in my private tone brief weeks before any user saw the product.


I tested DeepSeek against GPT and Claude in Chinese context. I picked DeepSeek for two reasons. First, I planned to expand into Eastern divination systems where a Chinese-native model interprets frameworks more naturally. Second, I'm self-funding the API, which made resource discipline part of the design.
What I cut
Session archiving. I designed it into the menu from day one and left it visible to users as "Coming Soon." But building backend infrastructure with no user data felt speculative. I shipped without it as a deliberate choice, knowing some users would ask. They are asking now, so it is coming.
Eastern divination systems (Meihua Yishu, BaZi). Genuinely interesting to me, but their interpretation logic is fluid and acceptance is mixed even among Chinese users. I wanted to test reaction to Tarot first, where the symbol set is contained, well known, and culturally accepted across audiences. Now I have signal that users want more, so the next system is on the roadmap.
Infinite draws. Designed an explicit endpoint mechanism. When the AI surfaces a "suggestion card," the session force closes. No chasing a better answer.
The launch
Posted on Rednote at 3am. No promotion. No KOL outreach. Just one post and a link.
Within 48 hours:
- 5,000+ visitors to the live product
- 8,300+ page views
- 280+ unprompted shares
- 9,000+ requests from US users alongside the primary Chinese audience, despite the post being in Chinese only
- 149+ unsolicited messages from users telling me what the tool meant to them
What users told me
The feedback that surprised me most wasn't about the features. It was emotional, structural, and concrete.
A user wrote: "Thank you. It told me I haven't lost my grandfather."
Another, deciding whether to leave her job after years of feeling stuck, drew Strength upright and stayed with the reading: "Some paths steady themselves as you walk them."
A third, and 40+ others in different words, said the same thing: "The answer was already in me. The card just made it real."
A user in the UK left the most-liked comment in the entire thread: "The output is so thoughtfully done. The advice and the 'return to real life' landing, it's just great."
That one mattered most to me. The "return to real life" landing was the design decision I worried about most. It cuts engagement by definition. It tells users to leave. I almost didn't ship it. The user pointed at the exact thing I was scared to do and said: this is the part that's great.
Others called it 温暖有力, warm and grounded. The same two words from my private design doc, surfaced organically by users who had no idea those were my targets.
One user simply wrote: "Already shared with five friends. They all said it was accurate."
What this taught me
What I learned is that real users don't want AI to predict. They want AI to mirror, and to gently nudge them forward.
Not because everyone already has the answer. Many genuinely don't. But the moment of being seen clearly, then sent back to their own life with a small push, is something they had not realized AI could give them. Several users wrote that the reading "woke them up" to a decision they had been circling for months.
The metric you optimize for shapes the kind of relationship you build. RiLL is optimized for less use over time. What I got back was deeper trust.
This isn't a startup. RiLL is self-funded. I cover the API costs because I wanted to know if the design philosophy worked, not because I wanted a business. The patterns I learned, anti-addictive interaction loops, bilingual prompt engineering, ritual as state transition, action as the only real endpoint, are what I want to bring to teams building AI products at scale.

