← 포트폴리오 목록

2026.05 – 진행 중

EasyPrompt (이지프롬)

비개발 직군을 위한 폼 기반 AI 프롬프트 플랫폼. 인프라를 Hono + Cloudflare Workers로 전면 이전해 콜드스타트를 제거.

역할
기획·설계·프론트·백엔드·DB·배포 전 과정 (단독)
기술
React · Vite · TailwindCSS · react-router-dom · Hono · TypeScript · Cloudflare Workers · Cloudflare D1 · Cloudflare Pages
링크 열기 ↗

배경

개발자·디자이너를 제외한 경영기획·마케팅·영업·사무직은 “서식이 없거나 표준이 정해지지 않은 업무 상황”에서 AI 프롬프트 작성에 어려움을 겪는다. 이 지점에 초점을 맞춘 서비스를 기획했다.

한 일

  • 역할 / 상황 / 목적 / 조건 / 출력 구조 기반의 폼 입력 시스템 설계 — AI 입문자도 프롬프트 엔지니어링 원리를 자연스럽게 체득하도록 구성
  • 인증(JWT), 카테고리·프롬프트 CRUD, 즐겨찾기, 맞춤 프롬프트 생성, 관리자 기능 전체 구현
  • 프리미엄 느낌의 웜 파스텔 UI, “AI 입문자 / 프롬프트 활용” 2단계 네비게이션 구성

트러블슈팅

인프라 마이그레이션 (FastAPI/Render → Hono/Cloudflare Workers)

  • Render 무료 플랜 콜드스타트를 없애려 Cloudflare Python Workers(FastAPI)를 먼저 시도했으나, Pydantic 모델 컴파일이 Workers CPU 예산(약 1000ms)의 2배 이상을 소모해 모든 요청이 503(CPU 제한 초과)으로 실패하는 플랫폼 한계를 확인
  • 프론트와 동일한 JS/TS 스택으로 백엔드를 Hono로 전면 재작성하고 D1 직접 쿼리로 전환 → Startup Time 2119ms → 16ms로 단축, 콜드스타트 근본 해소
  • 전체 라우터를 SQLAlchemy 세션 방식에서 D1 바인딩 직접 호출 방식으로 재설계

배포

  • 배포 직후 CORS 에러로 보였던 문제의 실제 원인이 “로컬 SQLite 파일이 .gitignore에 걸려 배포 환경에 테이블 자체가 없었던 것”임을 로그 분석으로 특정 → 서버 기동 시 테이블·시드 자동 생성 로직으로 해결
  • 재현 불가하던 CORS 에러는 Cloudflare Pages 환경변수(API Base URL)가 대시보드에 반영되지 않은 것이 원인 → 로컬 .env와 플랫폼 환경변수는 별개로 관리해야 함을 확인

보안

  • 로그인 실패 시 이메일 미존재 / 비밀번호 불일치를 동일한 메시지·상태코드로 통일하고 bcrypt 비교를 항상 고정 수행 → 계정 열거 공격 및 응답 속도 기반 타이밍 사이드채널 위험 제거

기술적 의사결정

  • AI API 기반 실시간 프롬프트 자동 생성을 킬러 기능으로 초기 기획했으나, API 비용 부담과 사용자별 API 키 등록이 비개발자 타겟에게 진입장벽이 되는 점, 폼 기반 구조화 자체가 이미 핵심 가치라는 판단으로 도입하지 않기로 결정

링크