피드로 돌아가기
Dev.toBackend
원문 읽기
Building Shipstry: 640 Commits, 9 Days, One Launch
개발자가 TanStack Start + Cloudflare Workers + D1 스택으로 9일 만에 풀스택 SaaS 플랫폼(Shipstry) 구축
AI 요약
Context
Product Hunt는 마케팅 팀이 주도하는 대규모 런칭에 유리해 개인 개발자의 우수 제품이 매장된다는 문제가 있었다. 이를 해결하기 위해 인디 메이커 중심의 제품 등록 플랫폼이 필요했다.
Technical Solution
- TanStack Start 프레임워크 도입: 파일 기반 라우팅과 TypeScript 타입 안전성으로 라우트 변경 시 영향받는 모든 코드에 즉시 피드백
- Cloudflare Workers + D1 조합: SQLite를 300개 이상 전 지역에서 실행하여 글로벌 콜드 스타트 제거
- Cloudflare R2로 파일 저장소 구성: S3 호환 API이지만 이그레스 요금 미부과로 대역폭 비용 예측 가능
- Drizzle ORM으로 데이터 스키마 설계: Draft(nullable 필드)와 Product(required 필드)를 분리해 부분 저장 흐름 지원
- Better Auth 통합: TanStack Start와 네이티브 연동으로 이메일/비밀번호 및 Google OAuth 구현
- Milkdown 마크다운 에디터 도입: 포커스 관리(toolbar mousedown 방지)로 사용자 경험 개선
- 캐싱 및 자동 무효화 패턴: TTL 기반 캐시와 mutation 후 자동 invalidation으로 고트래픽 시 읽기 부하 감소
- D1 트랜잭션 제약 우회: nested transaction 미지원으로 인해 sequential query 구조로 결제 webhook 처리 재설계
Impact
Domain Rating 0에서 론칭 후 2일 내 14로 증가.
Key Takeaway
모놀리식 edge 프레임워크(TanStack Start)와 분산 엣지 데이터베이스(D1)의 조합은 설정 오버헤드 없이 글로벌 저지연 풀스택 애플리케이션을 구축할 수 있게 한다. 또한 작고 원자적인 커밋(9일간 640개 커밋)의 규율은 긴급 롤백이나 변경사항 추적을 용이하게 했다.
실천 포인트
신생 SaaS 프로젝트에서 TanStack Start + Cloudflare Workers + D1 스택을 선택하면 초기 인프라 설정(서버 구성, DB 레플리케이션, 글로벌 배포)을 0부터 시작할 필요가 없어 개발 속도를 가속화할 수 있다. 특히 SQLite의 nested transaction 미지원 같은 제약은 초기에 데이터 스키마 설계 단계에서 sequential query 패턴으로 선제적 대응하면 후발 리팩토링 비용을 절감할 수 있다.