API 목록으로
백엔드 서비스무료

Supabase

Supabase · Supabase API

인증 방식

🔑 API Key

요금

무료(2프로젝트 500MB), Pro $25/월~

Base URL

[project].supabase.co

태그

백엔드, PostgreSQL

서비스 소개

Supabase는 PostgreSQL 기반의 Backend-as-a-Service입니다. 데이터베이스, 인증(소셜 로그인 포함), 스토리지, 실시간 구독, Edge Functions를 제공합니다. 무료 티어가 넉넉하고(프로젝트 2개, 500MB DB), Next.js와 궁합이 매우 좋습니다.

🚀 시작하기

  1. 1

    프로젝트 생성

    supabase.com → New project → 지역: Northeast Asia (Seoul)

  2. 2

    SDK 설치

    npm install @supabase/supabase-js

  3. 3

    URL·Key 설정

    .env에 SUPABASE_URL, SUPABASE_ANON_KEY, SUPABASE_SERVICE_ROLE_KEY 추가

  4. 4

    테이블 생성

    Table Editor 또는 SQL Editor에서 테이블 생성

📋 응답 예시

[
  { "id": 1, "name": "홍길동", "email": "hong@example.com", "created_at": "2024-01-01" },
  { "id": 2, "name": "김철수", "email": "kim@example.com",  "created_at": "2024-01-02" }
]

💡 코드 예제

JavaScriptNext.js
import { createClient } from '@supabase/supabase-js'

const supabase = createClient(
  process.env.NEXT_PUBLIC_SUPABASE_URL!,
  process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!
)

// 데이터 조회
const { data, error } = await supabase
  .from('users')
  .select('*')
  .eq('status', 'active')
  .order('created_at', { ascending: false })
  .limit(10)

// 데이터 삽입
const { data: newUser } = await supabase
  .from('users')
  .insert({ name: '홍길동', email: 'hong@example.com' })
  .select()
  .single()

// 소셜 로그인
const { data: auth } = await supabase.auth.signInWithOAuth({
  provider: 'kakao', // google, github, kakao 등
})

// 실시간 구독
supabase
  .channel('messages')
  .on('postgres_changes', { event: 'INSERT', schema: 'public', table: 'messages' },
    payload => console.log('새 메시지:', payload.new)
  )
  .subscribe()
PythonPython
from supabase import create_client

supabase = create_client(
    "https://xxxx.supabase.co",
    "YOUR_ANON_KEY"
)

# 조회
data = supabase.table("users").select("*").execute()
print(data.data)

# 삽입
result = supabase.table("users").insert({
    "name": "홍길동",
    "email": "hong@example.com"
}).execute()