주말에 Form Backend를 만들었어요, $20/월에 Contact Forms를 쓰는 건 어리석다
Source: Dev.to
그래서 말이죠
지난 주말에 친구의 포트폴리오 사이트를 설정하는 걸 도와줬어요. 멋진 디자인, 빠른 사이트, 무료 티어의 Vercel 호스팅—완벽했죠. 그러다 연락 양식을 달라고 했습니다. 보통은 폼‑백엔드 서비스를 쓰라고 하는데, 가격이 “월 20 달러?! 텍스트 몇 줄 저장하려고?” 라고 하더군요.
생각해 보면, 우리는 기본적으로 데이터베이스 삽입과 이메일 알림에 대해 돈을 내는 겁니다. 그래서 직접 만들기로 했어요.
제가 만든 것
FormRelay 은 간단합니다: HTML 폼을 이 주소로 지정하면 데이터를 저장하고, 이메일을 보내며, 대시보드에 모든 내용을 표시합니다. 차이점은 직접 호스팅한다는 것—당신의 Supabase 데이터베이스, 당신의 Vercel 배포, 당신의 데이터.
비용 비교
- Supabase 무료 티어: 50 k 사용자
- Vercel hobby 플랜: 무료
- Resend 무료 티어: 3 k 이메일/월
결과: $0/월 vs. $20/월.
“하지만 직접 호스팅하면 복잡하지 않나요?”
10년 전만 해도 그게 사실이었죠. 오늘날 Vercel과 Supabase 덕분에 다음만 하면 됩니다:
- 레포를 포크하기
- Deploy 클릭하기
- 몇 개의 환경 변수를 추가하기
그게 전부입니다. README를 쓰는 데 배포 자체보다 더 오래 걸렸어요.
여기서 여러분 중 일부는 빠질 수도 있어요
우리는 모든 것을 빌리는 데 너무 익숙해졌습니다. 인디 웹 정신은 “내 것이 내 것”이었지만, 이제는 모든 걸 구독합니다. 인프라를 관리하고 싶지 않은 사람도 많지만, “서버 랙을 직접 운영한다”와 “연락 양식 서비스를 연 300 달러에 구독한다” 사이에는 큰 격차가 있습니다. FormRelay는 그 격차를 메우기 위해 만들어졌습니다.
무작위로 배운 것들
- Next.js 15 은 App Router 논란 이후 견고해졌고, 서버 액션이 바로 동작합니다.
- Supabase 는 실시간 업데이트, 인증, 훌륭한 문서를 제공합니다.
- 가장 어려운 부분은 코드가 아니라 명확한 설정 안내서를 작성하는 것이었습니다.
이메일 관련 이야기
도메인에 이메일 호스팅이 없어서 Resend 를 사용했습니다. 무료 티어(3 k 이메일/월)가 딱 맞았죠. 이미 도메인에 이메일이 있다면 Resend 대신 어떤 SMTP 서버든 사용할 수 있습니다—자격 증명만 넣으면 됩니다.
기술 스택 (관심 있다면)
- Next.js 15 (App Router)
- Supabase (PostgreSQL + Realtime + Auth)
- Tailwind CSS
- Radix UI
- Resend (또는 기타 SMTP)
- Lucide icons
화려한 건 없고, 믿을 수 있는 도구들만 사용했습니다.
직접 사용해 보세요
- GitHub:
- Live demo:
이 프로젝트는 MIT 라이선스입니다. 포크하거나 버그를 보고하거나 풀 리퀘스트를 자유롭게 제출하세요.
핵심 포인트
이것은 단순히 $20/월을 절약하는 문제가 아니라, 우리가 의존하는 많은 도구들을 스스로 만들 수 있다는 점을 상기시켜 줍니다. SaaS 제품은 가치(지원, 유지보수, 기능)를 제공하지만, 폼 처리처럼 기본적인 기능이라면 주말 프로젝트 하나로 비싼 구독을 대체할 수 있습니다.
