프로젝트 로드맵
최종 업데이트: 2025년 6월 29일
이 문서는 SurfAI 프로젝트가 앞으로 어떤 목표를 가지고 개발될지, 짧은 기간과 긴 기간으로 나누어 설명합니다. 이 계획은 시장 상황이나 사용자 의견에 따라 바뀔 수 있습니다.
✅ 1단계: 기본 기능 만들기 (완료)
목표: 서비스의 가장 중요한 기능들(그림/영상 만들기, 로그인, 서비스 배포)을 완성하고, 안정적인 인터넷 환경을 만듭니다.
- [완료] 로그인 시스템 만들기:
JWT
라는 로그인 정보(접근 토큰, 갱신 토큰)를 사용하는 로그인 시스템을 만들었어요.HttpOnly
,Secure
쿠키라는 안전한 방법으로 로그인 정보를 주고받아요.Google
로그인과 일반 이메일/비밀번호 로그인을 모두 사용할 수 있어요.- 누가 어떤 기능을 쓸 수 있는지 권한을 확인하는 기능도 만들었어요.
- [완료] 그림/영상 만드는 핵심 기능:
- '만들기' 페이지에서 원하는 그림/영상 만드는 방법(템플릿)을 고르고, 필요한 정보만 입력해서 그림/영상을 만들 수 있어요.
WebSocket
이라는 기술로 그림/영상 만드는 진행 상황과 결과물을 실시간으로 볼 수 있어요.- 지금 만들고 있는 그림/영상들을 임시로 볼 수 있는 기능도 있어요.
- [완료] 만들어진 결과물 관리 시스템:
- 만들어진 그림/영상 파일들을
Cloudflare R2
라는 곳에 저장해요. - 그림/영상을 만들 때 사용했던 정보들은
PostgreSQL
데이터베이스에 저장해요. - 안전하게 파일을 보고 다운로드할 수 있는 임시 주소(URL)를 만들 수 있어요.
- 파일은 2일 후에 자동으로 지워지지만, 만들었던 기록은 계속 보관하는 규칙을 정했어요.
- 만들어진 그림/영상 파일들을
- [완료] 서비스 환경과 자동 배포:
- 웹사이트와 뒤에서 일하는 프로그램(백엔드)을
Docker
라는 상자로 만들었어요. Google Cloud Run
이라는 곳에 서비스를 올리고,surfai.org
,api.surfai.org
같은 인터넷 주소를 연결했어요.- 코드를 고치면 자동으로 서비스에 반영되는 과정(자동 배포)을
GitHub Actions
라는 도구로 완성했어요.
- 웹사이트와 뒤에서 일하는 프로그램(백엔드)을
🚀 2단계: 서비스 안정화 및 관리자 기능 완성 (가까운 목표)
목표: 관리자가 서비스를 완전히 관리할 수 있는 기능을 만들고, 사용자들이 자신의 과거 기록을 쉽게 볼 수 있도록 해서 서비스를 더 완벽하게 만들 거예요.
- [완료] 관리자 페이지 - 그림/영상 만드는 방법(템플릿) 관리:
- 관리자가 그림/영상 만드는 방법 템플릿을 새로 만들고, 보고, 고치고, 지울 수 있는 모든 기능을 완성했어요.
- [완료] 사용자 기록 페이지:
- 사용자들이 '내 기록' 페이지에서 자신이 만들었던 모든 그림/영상 기록을 보고, '더 보기' 버튼을 눌러서 이전 기록들을 계속 볼 수 있는 기능을 완성했어요.
- 보안 강화:
- [예정] 로그인 정보(갱신 토큰)를 더 안전하게 관리하고, 혹시 도난당했을 때 알아챌 수 있는 기능을 만들 거예요.
- [예정] 뒤에서 일하는 프로그램(
NestJS
)에 너무 많은 요청이 한꺼번에 오는 것을 막는 기능을 추가할 거예요.
🌟 3단계: 사용자 경험 개선 및 서비스 확장 (중간 목표)
목표: 사용자들이 서비스를 더 편리하게 이용할 수 있도록 하고, 그림/영상 만드는 컴퓨터를 Google Cloud
로 옮겨서 완전히 클라우드 기반의 서비스로 만들 거예요.
- 그림/영상 만드는 컴퓨터를 클라우드로 옮기기:
- [예정] 지금은 개인 컴퓨터에서 작동하는 AI 그림/영상 만드는 프로그램(
ComfyUI
)을Google Compute Engine
의GPU
컴퓨터로 옮길 거예요. - [예정] 비용을 아끼기 위해 필요할 때만 컴퓨터를 사용하거나, 남는 컴퓨터를 빌려 쓰는 방법(
Spot VM
)을 사용할 거예요.
- [예정] 지금은 개인 컴퓨터에서 작동하는 AI 그림/영상 만드는 프로그램(
- 사용자 편의 기능:
- [예정] "나만의 그림/영상 만드는 방법" 기능: 사용자가 자주 사용하는 설정들을 저장해두고 언제든지 다시 불러와서 사용할 수 있는 기능을 만들 거예요.
- [예정] 그림/영상 만드는 방법(템플릿)을 태그로 찾거나 검색하는 기능을 만들 거예요.
- [예정] 만들어진 그림/영상을 다른 사람들과 쉽게 공유할 수 있는 기능을 만들 거예요.
💰 4단계: 수익 창출 및 서비스 넓히기 (장기 목표)
목표: 다른 프로그램에서도 우리 서비스의 그림/영상 만드는 기능을 사용할 수 있도록 하고, 유료 서비스를 도입해서 서비스를 계속 운영할 수 있도록 할 거예요. 그리고 사용자 커뮤니티를 만들어서 서비스를 더 넓힐 거예요.
- 다른 프로그램에서 사용 가능한 기능 제공 (
API
서비스):- [예정] 다른 개발자들이 SurfAI의 그림/영상 만드는 기능을 자신의 서비스에 연결할 수 있도록 공개된 기능(
API
)과 설명 문서를 제공할 거예요. - [예정]
API
를 사용하는 사람들을 관리하고, 얼마나 사용했는지 확인할 수 있는 시스템을 만들 거예요.
- [예정] 다른 개발자들이 SurfAI의 그림/영상 만드는 기능을 자신의 서비스에 연결할 수 있도록 공개된 기능(
- 유료 서비스 도입:
- [예정] '무료', '전문가용', '기업용' 같은 여러 가지 유료 요금제를 만들 거예요.
- [예정] 요금제에 따라 그림/영상 만들 수 있는 횟수, 동시에 작업할 수 있는 개수, 특별한 기능 사용 여부 등을 다르게 할 거예요.
- 커뮤니티 기능:
- [예정] 사용자들이 자신이 만든 그림/영상을 공유하고, '좋아요'를 누르거나 서로 이야기할 수 있는 갤러리/커뮤니티 기능을 만들 거예요.
- [예정] 인기 있는 그림/영상 만드는 방법이나 인기 있는 그림/영상들을 보여주는 순위 시스템을 만들 거예요.