Supabase

별칭: Supabase · 슈파베이스

Postgres 기반 DB, 인증, 스토리지, 실시간 기능을 제공하는 백엔드 플랫폼.

Supabase는 웹앱에 데이터베이스와 로그인 기능을 빠르게 붙일 수 있는 백엔드 플랫폼이다. 바이브코딩 클래스에서는 저장 목록 테이블, Supabase Auth, RLS 정책을 설명하는 예시 도구로 사용한다.

정의

Supabase는 Postgres 데이터베이스를 중심으로 인증(Auth), 스토리지, 실시간 구독, Edge Functions 등을 제공하는 백엔드 플랫폼이다. 프론트엔드 개발자가 서버를 처음부터 직접 만들지 않아도 웹앱에 저장과 로그인 기능을 붙일 수 있게 돕는다.

왜 중요한가

초보자가 웹앱을 실제 서비스로 만들 때 가장 빨리 막히는 지점은 "데이터를 어디에 저장하지?", "로그인은 어떻게 붙이지?", "내 데이터만 보이게 하려면?"이다. Supabase는 이 세 문제를 하나의 프로젝트 안에서 다룰 수 있어 실습용으로 설명하기 좋다.

Semiclass에서의 의미

수업에서는 Supabase를 DB 코어와 신원 인장의 도구로 사용한다. 관심 항목을 테이블에 저장하고, Supabase Auth로 사용자를 구분하며, RLS 정책으로 owner_id가 현재 사용자와 일치하는 행만 읽고 수정하게 만든다.

주의할 점

Supabase anon key는 브라우저에 들어갈 수 있지만, service role key는 절대 브라우저에 노출하면 안 된다. public schema의 테이블을 클라이언트에서 접근하게 할 때는 RLS를 켜고 정책을 명확히 작성해야 한다. 빠른 실습에서도 이 구분은 반드시 지켜야 한다.

출처