Projects.

AI- and developer-facing things I've built outside the day job — shipped, in the wild, and still being polished.

AI-augmented community platform for jiu-jitsu.

Built and operate one of Korea's largest jiu-jitsu platforms — 500+ monthly active users, near-zero marketing spend — entirely as a solo full-stack engineer. The Next.js web app is live; Android and iOS Kotlin Multiplatform apps ship H2 2026. I run the whole stack as a one-person team and lean on AI harness engineering — evals, guardrails, tool sandboxes, and structured context pipelines — to keep LLM-driven workflows reliable as the product evolves.

Founder & Sole Engineer — 2024 to present.

Highlights

  • 500+ monthly active users on near-zero marketing spend; the entire stack — Postgres/Supabase backend, REST APIs, web, mobile, CI/CD, payouts, analytics — run by one person.
  • AI harness engineering invested up front: evals, guardrails, tool sandboxes, and structured context pipelines so LLM behavior in product stays reliable as models and prompts change.
  • Direct line to a real developer-experience problem — I am the user, the integrator, and the operator, so I know first-hand which docs, SDKs, and abstractions are good and which ones make you give up at 11pm.

Stack

Next.jsTypeScriptSupabase / PostgresRow-Level SecurityKotlin MultiplatformCompose MultiplatformOpenAI APIEvals & guardrailsVercelGitHub Actions

Cross-platform consumer app — Android & iOS, one codebase.

Gallr is a mobile-first guide to art exhibitions across Korea — featured picks, opening/closing this week, and a map view of every gallery. Designed, built, and released live on Google Play and the App Store from a single Compose Multiplatform codebase. The kind of polished, end-to-end sample-quality project I ship to show "here's what good looks like" — not a toy demo, a real product real users open.

Founder & Lead Engineer — 2024 to present.

Gallr map view showing exhibitions across Seoul
Gallr featured exhibitions list

Highlights

  • Single Kotlin codebase ships to Android and iOS via Compose Multiplatform, including a Naver Maps `UIKitView` interop for the iOS map.
  • Owned end-to-end: discovery, store assets, release pipeline, and post-launch iteration across both platforms.
  • Bilingual KO/EN data pipeline with a sheet-to-Supabase sync job; new schema columns are deploy-safe through an explicit known-columns contract.
  • Reductionist monochrome design system — compile-time Kotlin design tokens, custom typography, and a tight component vocabulary.

Stack

Kotlin MultiplatformCompose MultiplatformMaterial 3Naver Maps SDKSupabase / PostgresKtorCoilDataStoreGoogle Apps ScriptEleventy (marketing site)