Day 1: Why I'm Building a Fortune-Telling App (And I Know Nothing About Fortune-Telling)

I pushed 21 commits today. By the end of it I had a monorepo with 5 apps, shared packages, and the skeleton of something that might actually become a product. But let me back up and explain how a CTO-type engineer who's spent his career at Airbnb, Apple, and AWS ended up deciding to build a Chinese metaphysics platform.

The Itch

Here's the thing about being an engineer in big tech: you get really, really good at building things other people spec out. You ship infrastructure. You scale systems. You make architectural decisions that affect millions of users. But you never touch the messy parts -- the GTM strategy, the pricing page copy, the "why is our conversion rate 2% and not 4%" conversations. Someone else handles that.
I've been wanting to experience the FULL product lifecycle for years. Not just the engineering. The product design. The user feedback loops. The business decisions. All of it. Solo. No PM to write the PRD. No designer to hand me Figma files. No growth team to figure out retention.
So when I was looking for a side project to scratch this itch, I had one constraint: it had to be in a domain I know absolutely nothing about.

Why Chinese Metaphysics, Specifically

I know NOTHING about BaZi, astrology, tarot, dream interpretation, or Liuren. Zero. I couldn't tell you what a "day pillar" is or why your birth hour matters.
That's exactly the point.
The hypothesis: Can AI completely bridge a domain knowledge gap? Not "can AI help an expert work faster" -- I mean: can someone with ZERO domain expertise build a credible, useful product in a specialized field, using AI as their entire knowledge base?
There's also a pragmatic angle. The Chinese-speaking market for fate analysis is enormous and underserved digitally.

The Monorepo Migration

First commit: "Initial monorepo setup with Turborepo." The task was conceptually simple -- move 5 apps into one workspace -- but in practice it was a full day of untangling.
The process was roughly:
  1. Set up the Turborepo workspace
  1. Move each app into apps/
  1. Extract shared code into packages/
  1. Fix every single import that broke
  1. Verify each app still builds and runs
Steps 4 and 5 took about 80% of the time.

The AI Workflow

I'm using Claude Code as my primary development tool. Not as a chatbot I paste code into -- as an actual coding agent that reads my codebase, makes changes across files, runs tests, and iterates.
For the domain-specific stuff, Claude is functioning as both researcher and implementer. I ask "how does BaZi day pillar calculation work?" and get back not just an explanation but working TypeScript code that implements the system.
It's a weird feeling. I'm building a product where the AI knows more about the domain than I do.

End of Day 1

By midnight, the monorepo builds. All 5 apps load. Shared auth works. The Supabase client is unified.
21 commits. One monorepo. Zero knowledge of fortune-telling.

Tech Stack

  • Monorepo: Turborepo
  • Framework: Next.js (App Router)
  • Database/Auth: Supabase
  • AI: Claude + Gemini -- multi-model
  • Styling: Tailwind CSS
  • Language: TypeScript throughout
  • Deployment: Vercel

© Xingfan Xia 2024 - 2026