Skip to content
Hooney
한국어
Products

My startupLive

Firstage

I build a service for keeping a record of everyday life through photos and places. I founded Firstage and handle planning, development, and operations.

166Page layouts to choose from in the photobook editor, across 10 themes

Period
2025.05 ~ Present
Role
Founder
Key features
Revisit photos by when and where they were taken, share those records with the people close to you, and make a photobook from the ones you choose.
Work and results
  • Original photo storage separated from preview generation and location processing
  • A photobook editor with AI layout suggestions and placement calculated by the editing engine
  • 10 photobook themes and 166 page layouts
  • Web service in operation, iOS app in internal testing
Tech stack
  • Next.js
  • Capacitor
  • NestJS
  • PostgreSQL
  • React
  • TypeScript
  • Drizzle ORM
  • BullMQ
  • Konva
  • MapLibre GL
  • Cloudflare Workers
  • Kubernetes

Context

I founded Firstage and handle planning, frontend, backend, infrastructure, and operations. The service lets individuals, couples, and families collect photos and places, revisit everyday life, and share records with the people close to them.

It started as a travel content site for visitors to Korea, where I tested ads and SEO. I later shifted toward recording everyday life through photos and places. The product now connects photo uploads with place browsing, a feed, shared spaces, and a map.

Decisions and implementation

  • I designed photo upload to store the original first. A BullMQ worker then creates previews, HEIC conversions, EXIF data, and reverse geocoding, which keeps heavy processing separate from preserving the original.
  • Capture time and GPS connect to a timeline, place albums, and map exploration. Photos without location stay in their own group; the product never invents coordinates for them.
  • To support photobooks and print as the business output, I built a canvas editing engine. AI returns a structured plan and editing intent, and a deterministic engine owns coordinates, photo placement, bleed, and DPI checks. Ten editorial themes and 166 layouts are in production.
  • A Capacitor shell wraps the Next.js web app so web and mobile share screens and features, while native lifecycle and upload recovery are handled separately.
  • In September 2026 I moved the frontends to Cloudflare Workers and the backend to a Kubernetes (K3s) cluster I operate, monitored with Prometheus and Grafana.
  • I turned development with AI agents (Codex, Claude Code) into rules, skills, and automated checks inside the repository. I approve external submissions, payments, and deployments myself.

Current state

The web service is in operation, and the iOS app is in internal TestFlight testing. Print ordering is deployed through the payment integration, but stays closed until the merchant contract and physical proof checks are done.

Screen gallery

The Firstage photos screen. A phone groups photos by the day they were taken, in September 2026 and September 2025.
The Firstage places screen. Under a globe map, photos taken in Jongno, Seoul are grouped by place.
The Firstage shared space screen. The space 'Seoul at an Easy Pace' shows photos from several members with their comment counts.
The Firstage diary screen. Under the photos sits a short note, 'A slow day in Seoul', with a comment.
The Firstage magazine screen. The story 'A morning walk through Gyeongbokgung' reads as photos and text on a phone and on the web.
The Firstage photobook screen. Selected photos float beside a photobook whose cover shows Gyeongbokgung.