How I Built a Free Python Practice Platform With Zero Server Costs Using Groq and Supabase

개요

PyCodeIt는 서버 비용 없이 무한한 Python 연습 플랫폼을 제공하며, 사용자의 API 키를 직접 활용하는 Bring Your Own Key (BYOK) 아키텍처를 특징으로 한다.

주요 내용

* 비용 절감을 위한 BYOK 아키텍처: AI API 호출 비용을 플랫폼 운영자가 부담하는 대신, 사용자가 자신의 OpenRouter API 키를 직접 입력하여 사용한다. 이를 통해 서버 관련 비용을 완전히 제거했다.
* 프릭션 없는 사용자 경험 (UX): 사용자는 회원가입 없이 즉시 플랫폼을 사용할 수 있다. OpenRouter API 키를 입력하면 바로 Python 연습 문제를 생성한다.
* Supabase 활용: 사용자 인증(이메일, Google OAuth) 및 점수, 연속 기록 등의 데이터 저장을 위해 Supabase를 사용한다. Supabase는 월 50,000명의 활성 사용자까지 무료로 제공된다.
* 다양한 AI 모델 접근 및 Fallback: OpenRouter를 통해 8가지 이상의 AI 모델에 접근 가능하며, 특정 모델의 지연 또는 속도 제한 발생 시 자동 fallback 로직을 지원한다.
* 구조화된 JSON 응답: 문제 생성 프롬프트는 항상 일관되고 파싱 오류가 없는 JSON 형식의 응답을 반환하도록 설계되었으며, response_format을 JSON 객체로 강제한다.
* 보안 및 투명성: API 키는 사용자의 localStorage에 저장되며, 네트워크 요청 시 노출될 수 있다는 점을 UI에 명확히 안내하고, 사용자가 쉽게 API 키를 삭제하거나 제한 설정을 할 수 있도록 지원한다.
* 향후 개선 방안: API 키 노출을 더욱 최소화하기 위해 Supabase Edge Function을 프록시로 사용하여 요청을 전달하는 방안을 고려한다.

시사점

이 아키텍처는 AI 기반 서비스 개발 시 초기 비용 부담을 획기적으로 줄이고, 사용자에게는 마찰 없는 경험을 제공하며, 확장성을 확보할 수 있는 효과적인 방안을 제시한다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions