Directus vs Payload vs Supabase: 2026년 당신의 스택에 맞는 백엔드는?
배포가 완료되고 사이트가 라이브되고, 3주 후 콘텐츠 팀에서 연락이 온다: 이미지 업로드가 타임아웃되고, 중첩된 카테고리가 저장되지 않으며, API 응답이 800ms를 넘어간다. 나는 지난 2년간 프로덕션 프로젝트에서 Directus, Payload, Supabase로 이 시나리오를 다시 구축했다 — 같은 증상, 매번 다른 근본 원인. 답은 랜딩 페이지에서 건너뛰는 것들에 달려 있다: 편집자들이 워크플로우를 어떻게 구성하는지, 실제 관계형 그래프가 어떻게 되는지, Series A가 마감될 때 이 스택을 여전히 사용하고 있는지. 어떤 백엔드가 다음 6개 스프린트를 버틸지 결정하는 프레임워크가 여기 있다.
이것은 기능 체크리스트 비교가 아니다. Social Animal에서 프로젝트를 스코핑할 때 실제로 사용하는 의사결정 프레임워크이며, 수십 개의 헤드리스 빌드를 통해 개선되었다. 끝까지 읽으면 자신의 구체적인 상황에 맞는 도구가 어느 것인지 알 수 있을 것이고, 자신을 의심할 필요가 없을 것이다.
목차
- 각 도구의 핵심 정체성
- 아키텍처 및 데이터 모델링 비교
- 콘텐츠 편집 경험
- 개발자 경험 및 API 설계
- 인증, 권한 및 행 수준 보안
- 자체 호스팅, 클라우드 및 2026년 가격
- 성능 및 확장성 벤치마크
- 의사결정 프레임워크: 어느 것을 언제 사용할지
- 실제 프로젝트 시나리오
- 마이그레이션 경로 및 종속성 고려사항
- FAQ

각 도구의 핵심 정체성
세부사항으로 들어가기 전에 각 도구가 실제로 무엇인지 핵심 수준에서 이해해야 한다. 기능 세트의 중복이 오해를 불러일으킬 수 있기 때문이다.
Directus는 데이터베이스 우선 헤드리스 CMS이다. 기존 SQL 데이터베이스(Postgres, MySQL, SQLite, MS SQL, MariaDB, CockroachDB)를 자동 생성된 API와 세련된 관리 패널로 감싼다. 데이터베이스를 설계하면 Directus가 내성한 다음 UI를 제공한다. TypeScript로 작성되고 Node.js에서 실행된다.
Payload는 Next.js 기반의 코드 우선 헤드리스 CMS이다(Payload 3.0 기준). TypeScript 설정 파일에서 컬렉션과 필드를 정의하면, Payload가 해당 설정에서 데이터베이스 스키마, 관리 UI, API 엔드포인트, TypeScript 타입을 생성한다. MongoDB 또는 Postgres를 데이터베이스 레이어로 사용한다.
Supabase는 오픈 소스 Firebase 대체재이다 — Postgres 위에 구축된 백엔드 서비스이다. 실제로는 CMS가 아니다. 인증, 스토리지, 실시간 구독, 엣지 함수를 갖춘 데이터베이스 플랫폼이다. 하지만 팀들이 CMS 백엔드로 자주 사용하는데, 이것이 계속 이런 비교에 나타나는 이유이다.
이 구분은 이 기사의 다른 무엇보다도 중요하다. Directus와 Payload는 목적별 콘텐츠 관리 시스템이다. Supabase는 충분한 노력으로 콘텐츠 관리 시스템으로 형성할 수 있는 범용 백엔드이다.
아키텍처 및 데이터 모델링 비교
Directus: 데이터베이스 우선
Directus는 당신의 스키마를 소유하지 않는다. 기존 데이터베이스를 가리킬 수 있으며 자동으로 관리 패널을 생성한다. 이는 레거시 시스템으로 작업할 때 또는 데이터 모델이 콘텐츠 관리를 넘어 여러 애플리케이션을 서비스할 때 정말 강력하다.
Directus의 관계 모델링은 견고하다. M2M, M2O, O2M, 심지어 번역도 UI를 통해 처리된다. 하지만 함정이 있다: Directus가 데이터베이스에서 생성하기보다는 내성하기 때문에, 스키마 변경은 마이그레이션과 Directus 관리자 두 곳에서 일어난다. 팀 환경에서 규율이 없으면 복잡해질 수 있다.
# Directus 스키마 스냅샷(간소화됨)
collections:
- collection: articles
fields:
- field: title
type: string
interface: input
- field: content
type: text
interface: input-rich-text-md
- field: author
type: uuid
interface: select-dropdown-m2o
related_collection: authors
Payload: 코드 우선
Payload 3.0(2026년 현재 버전)은 Next.js 플러그인으로 내부에서 실행된다. 컬렉션은 TypeScript로 정의된다:
import { CollectionConfig } from 'payload'
export const Articles: CollectionConfig = {
slug: 'articles',
admin: {
useAsTitle: 'title',
},
fields: [
{
name: 'title',
type: 'text',
required: true,
},
{
name: 'content',
type: 'richText',
},
{
name: 'author',
type: 'relationship',
relationTo: 'authors',
},
],
}
이 코드 우선 접근 방식은 스키마가 버전 제어에 살아있다는 것을 의미한다. 설정에서 완전한 TypeScript 타입이 자동 생성된다. TypeScript 중심 팀의 DX가 최고다. 단점? 비개발자는 코드 변경 없이 데이터 모델을 수정할 수 없다.
Supabase: SQL 우선
Supabase에서는 SQL을 작성한다. 원본 Postgres. 테이블을 정의하고, 행 수준 보안 정책을 설정한 다음 자동 생성된 REST API(PostgREST) 또는 JavaScript 클라이언트를 통해 상호작용한다.
CREATE TABLE articles (
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
title TEXT NOT NULL,
content JSONB,
author_id UUID REFERENCES authors(id),
created_at TIMESTAMPTZ DEFAULT now(),
published BOOLEAN DEFAULT false
);
-- 행 수준 보안
ALTER TABLE articles ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Public can read published articles"
ON articles FOR SELECT
USING (published = true);
최대 유연성을 얻지만 기본적으로 콘텐츠 관리 UI는 없다. 사용자 정의 관리자를 구축하거나, 제3자 도구를 사용하거나, 같은 Postgres 인스턴스 위에 Directus 같은 것을 연결해야 한다(맞다, 사람들이 실제로 이렇게 한다).
콘텐츠 편집 경험
CMS와 CMS가 아닌 것의 구분이 가장 강하게 드러나는 부분이다.
| 기능 | Directus | Payload | Supabase |
|---|---|---|---|
| 내장 관리 UI | ✅ 세련되고 사용자 정의 가능 | ✅ Next.js 네이티브, 매우 좋음 | ❌ 표 편집기만 |
| 리치 텍스트 에디터 | ✅ WYSIWYG + 마크다운 | ✅ Lexical 기반(우수) | ❌ 없음 |
| 미디어 라이브러리 | ✅ 완전한 기능 | ✅ 완전한 기능 | ⚠️ 스토리지 버킷(라이브러리 UI 없음) |
| 콘텐츠 미리보기 | ✅ 사용자 정의 모듈을 통해 | ✅ 네이티브 라이브 미리보기 | ❌ 직접 구축 |
| 지역화 | ✅ 내장 번역 시스템 | ✅ 필드 수준 지역화 | ❌ 수동 구현 |
| 콘텐츠 버전 관리 | ✅ 수정 사항 내장 | ✅ 초안 + 버전 | ❌ 직접 구축 |
| 워크플로우 / 게시 | ✅ 흐름 시스템 | ✅ 초안/게시 상태 | ❌ 사용자 정의 로직 필요 |
| 비개발자 친화적 | ✅ 매우 | ✅ 그렇다 | ❌ 전혀 아니다 |
프로젝트에 콘텐츠 편집자 — 블로그 글을 작성하고, 제품 카탈로그를 관리하고, 랜딩 페이지를 업데이트하는 사람들이 포함된다면, Supabase는 틀린 도구다. 끝. Directus와 Payload가 1일차에 제공하는 것을 몇 주 동안 구축하게 될 것이다.
Payload의 편집자 경험은 3.0 이후 놀랍도록 좋아졌다. Lexical 기반 리치 텍스트 에디터는 유연하고, 라이브 미리보기 기능은 Next.js 프론트엔드와 아름답게 작동하며, 관리 패널은 Next.js 앱 내부에서 실제로 실행되므로 네이티브처럼 느껴진다.
Directus는 3개 중 가장 성숙한 관리 패널을 가지고 있다. 수년간 개선되었으며, 사용자 정의 디스플레이/인터페이스 시스템은 프론트엔드 코드를 건드리지 않고도 복잡한 편집 워크플로우를 구축할 수 있다는 의미다. 콘텐츠 중심 조직의 경우 이것이 중요하다.

개발자 경험 및 API 설계
API 스타일
Directus는 JavaScript SDK와 함께 REST와 GraphQL을 기본으로 제공한다. REST API는 일관된 패턴을 따르고, GraphQL 구현은 스키마에서 자동 생성된다. 작동하지만 GraphQL은 복잡한 중첩 쿼리에 제한적일 수 있다.
Payload는 REST와 GraphQL API를 생성하며, Local API(HTTP 오버헤드 없이 직접 데이터베이스 쿼리)에 대한 전체 접근을 얻는다. Payload 3.0이 Next.js 앱 내부에서 실행되므로, Server Components에서 payload.find()를 직접 호출할 수 있다. 이는 Next.js 프로젝트에 막대한 장점이다.
// Server Component에서 Payload Local API
import { getPayload } from 'payload'
import config from '@payload-config'
export default async function ArticlePage({ params }) {
const payload = await getPayload({ config })
const article = await payload.findByID({
collection: 'articles',
id: params.id,
depth: 2,
})
return <Article data={article} />
}
Supabase의 API는 PostgREST로 자동 생성되며, JavaScript 클라이언트 라이브러리는 정말 우수하다. 쿼리 빌더가 자연스럽다:
const { data, error } = await supabase
.from('articles')
.select('*, author:authors(*)')
.eq('published', true)
.order('created_at', { ascending: false })
.range(0, 9)
Supabase는 또한 Directus와 Payload가 기본으로 제공하지 않는 실시간 구독을 가지고 있다. 라이브 데이터 업데이트가 필요하면(채팅, 알림, 협업 편집), Supabase가 기본적으로 승리한다.
타입 안정성
Payload는 최고의 TypeScript 스토리를 가지고 있다. 타입은 컬렉션 설정에서 생성되며, 모든 것이 end-to-end로 강하게 타입된다. Supabase는 CLI(supabase gen types typescript)를 통해 견고한 타입 생성을 가지고 있으며, 이는 데이터베이스 스키마에서 타입을 생성한다. Directus는 TypeScript SDK를 가지고 있지만 타입 생성은 추가 설정이 필요하고 그리 긴밀하게 통합되어 있지 않다.
인증, 권한 및 행 수준 보안
Supabase가 정말 빛나는 부분이 여기다. Postgres 행 수준 보안(RLS)은 세 가지 중 가장 세밀하고, 가장 검증된 권한 모델이다. 데이터베이스 수준에서 정책을 정의하면, 데이터가 어떻게 접근되든 적용된다. 멀티테넌트 SaaS 애플리케이션에 엄청나게 강력하다.
Directus는 컬렉션 및 필드 수준에서 작동하는 역할 기반 권한 시스템을 가지고 있다. 관리 패널에서 직관적이고 대부분의 CMS 사용 사례에 충분하다. 역할별 CRUD 권한을 설정할 수 있고, 심지어 사용자 정의 필터 규칙도 추가할 수 있다.
Payload는 설정의 함수를 통해 필드 수준 및 컬렉션 수준 접근 제어를 제공한다:
{
slug: 'articles',
access: {
read: () => true,
create: ({ req: { user } }) => user?.role === 'editor',
update: ({ req: { user } }) => user?.role === 'editor',
delete: ({ req: { user } }) => user?.role === 'admin',
},
fields: [
{
name: 'internalNotes',
type: 'textarea',
access: {
read: ({ req: { user } }) => user?.role === 'admin',
},
},
],
}
편집자, 검토자, 관리자가 있는 표준 CMS의 경우 세 가지 모두 잘 작동한다. 동적 권한 규칙이 있는 복잡한 멀티테넌트 애플리케이션의 경우 Supabase의 RLS가 가장 강력한 옵션이다.
자체 호스팅, 클라우드 및 2026년 가격
세 가지 모두 오픈 소스이고 자체 호스팅 가능하다. 하지만 클라우드 가격은 그들의 목표 시장에 대해 많이 말해준다.
| 계획 | Directus Cloud | Payload Cloud | Supabase Cloud |
|---|---|---|---|
| 무료 계층 | ❌ 클라우드 무료 없음 | ✅ 1 프로젝트, 제한됨 | ✅ 2 프로젝트, 500MB DB |
| 스타터/프로 | $99/월(Professional) | $35/월(Standard) | $25/월(Pro) |
| 팀/비즈니스 | $399/월(Enterprise) | 사용자 정의 가격 | $599/월(Team) |
| 자체 호스팅 비용 | 무료(오픈 소스) | 무료(오픈 소스) | 무료(오픈 소스) |
| 포함된 데이터베이스 | ✅ 관리형 | ✅ 관리형 Postgres | ✅ 관리형 Postgres |
| CDN/스토리지 | 포함됨 | 포함됨 | 제한과 함께 포함됨 |
2026년 Q1 기준 가격. 현재 요금은 각 플랫폼의 가격 책정 페이지를 확인하세요.
Payload Cloud는 소규모-중규모 프로젝트에 대한 가장 저렴한 관리형 옵션이다. Supabase의 무료 계층은 프로토타이핑 및 사이드 프로젝트에 가장 관대하다. Directus Cloud는 세련된 관리형 경험에 대해 기꺼이 비용을 지불하는 더 큰 조직을 목표로 한다.
자체 호스팅은 방정식을 극적으로 변경한다. 3개 모두 $5-20/월 VPS에서 잘 실행된다. Directus와 Supabase는 공식 Docker Compose 설정을 가지고 있으며 안정적으로 작동한다. Payload는 Next.js가 실행되는 어디든 배포된다 — Vercel, Railway, Fly.io, 당신의 자체 서버.
우리의 헤드리스 CMS 개발 프로젝트의 경우, 비용 효율성을 위해 일반적으로 Railway 또는 Fly.io에서 자체 호스팅을 권장하며, 클라이언트가 보장된 SLA를 필요로 할 때만 관리형 클라우드를 권장한다.
성능 및 확장성 벤치마크
동등한 하드웨어(4 vCPU, 8GB RAM, Postgres 16)에서 ~50,000개 콘텐츠 레코드의 데이터 세트로 비공식 벤치마크를 실행했다.
| 작업 | Directus | Payload | Supabase |
|---|---|---|---|
| 간단한 목록 쿼리(20개 항목) | ~45ms | ~12ms(Local API) / ~38ms(REST) | ~18ms |
| 중첩 관계 쿼리(깊이 3) | ~120ms | ~35ms(Local API) / ~95ms(REST) | ~55ms |
| 전체 텍스트 검색(1,000개 결과) | ~180ms | ~85ms | ~40ms(pg_trgm) |
| 대량 삽입(1,000개 레코드) | ~2.1s | ~1.8s | ~0.9s |
| 콜드 시작 시간 | ~3.5s | ~2.8s | N/A(항상 실행) |
Payload의 Local API는 Next.js 애플리케이션에 가장 빠른 옵션이다. HTTP 오버헤드가 없기 때문이다 — 렌더링 프로세스에서 데이터베이스를 직접 쿼리하고 있다. Supabase의 원본 Postgres 성능은 데이터 중심 작업에 이기기 어렵다. Directus는 추상화 계층을 통해 오버헤드를 추가하지만 콘텐츠 서빙 워크로드에 완벽히 괜찮다.
특히 검색의 경우, Supabase는 Postgres의 기본 전체 텍스트 검색, 트리그램 인덱스, 심지어 pgvector 확장까지 사용할 수 있기 때문에 상당한 장점이 있다. Directus와 Payload는 모두 검색을 지원하지만 Postgres를 직접 활용하기보다는 자신의 구현에 의존한다.
의사결정 프레임워크: 어느 것을 언제 사용할지
실제 프레임워크는 여기다. 이 질문들에 답하면 선택이 명백해진다.
Directus를 선택하는 경우:
- 콘텐츠 팀이 크고 비기술적이다
- 기존 데이터베이스를 CMS 레이어로 래핑해야 한다
- Postgres가 아닌 다른 데이터베이스를 사용하고 있다(MySQL, MS SQL, 등)
- 여러 프론트엔드를 제공하는 독립형 CMS가 필요하다(웹, 모바일, 키오스크)
- 프론트엔드가 Next.js가 아니다(아마도 Astro, Nuxt, SvelteKit)
- 코드 없이 관리 UI 사용자 정의에서 최대 유연성을 원한다
Directus는 콘텐츠 중심 사이트의 경우 Astro와 아름답게 쌍을 이룬다. 빌드 시간 렌더링과 아일랜드 아키텍처가 전체 React 프레임워크보다 더 의미가 있는 경우.
Payload를 선택하는 경우:
- 프론트엔드가 Next.js다(이것이 킬러 사용 사례다)
- 팀이 TypeScript 우선이고 어디든 타입 안정성을 원한다
- CMS와 프론트엔드를 하나의 배포 가능한 단위로 원한다
- 라이브 미리보기 및 시각적 편집 기능이 필요하다
- 버전 제어에 코드 정의 스키마를 원한다
- 콘텐츠 모델이 사전에 잘 정의되어 있는 사이트를 구축하고 있다
Payload는 콘텐츠 관리가 핵심 요구사항인 Next.js 개발 프로젝트에 대한 우리의 기본 권장사항이다. 통합이 비교할 수 없다.
Supabase를 선택하는 경우:
- 콘텐츠 웹사이트가 아닌 애플리케이션을 구축하고 있다
- 실시간 기능이 필요하다(채팅, 라이브 업데이트, 협업 편집)
- 복잡한 멀티테넌트 권한이 필요하다(RLS가 최고다)
- 주요 필요는 백엔드이고 콘텐츠는 보조적이다
- Postgres 확장을 사용하고 싶다(pgvector, PostGIS, pg_cron)
- 팀이 자신들의 관리 인터페이스를 구축하는 것이 편하다
- 사용자 생성 데이터가 편집 콘텐츠보다 더 중요한 SaaS 제품을 구축하고 있다
실제 프로젝트 시나리오
시나리오 1: 블로그가 있는 마케팅 웹사이트
최고의 선택: Payload(Next.js인 경우) 또는 Directus(Astro/기타인 경우)
50-200개 페이지, 블로그, 2-3명의 작은 콘텐츠 팀이 있는 마케팅 사이트. 랜딩 페이지 유연성, 이미지 최적화, SEO 메타데이터 관리, 심지어 A/B 테스팅이 필요하다.
Payload의 라이브 미리보기 기능이 여기 완벽하다. 콘텐츠 편집자는 게시 전에 페이지가 정확히 어떻게 보일지 볼 수 있다. 블록 기반 필드 타입은 편집자에게 자신을 때릴 충분한 로프를 주지 않으면서도 유연한 랜딩 페이지를 구축할 수 있게 한다.
시나리오 2: 전자 상거래 제품 카탈로그
최고의 선택: Directus 또는 Payload
5,000+ SKU, 복잡한 분류, 여러 가격 목록, 인벤토리 시스템과의 통합이 있는 제품 카탈로그. 여기서 핵심은 데이터 모델링 유연성과 구조화된 데이터를 효율적으로 처리할 수 있는 능력이다.
Directus는 데이터 마이그레이션 없이 기존 제품 데이터베이스에 연결해야 할 경우 유리하다. Payload는 처음부터 구축하고 Next.js 스토어프론트에서 타입 안전 제품 쿼리를 원하는 경우 승리한다.
시나리오 3: 멀티테넌트 SaaS 플랫폼
최고의 선택: Supabase
각 고객이 자신의 데이터 공간을 가지고 있는 플랫폼이며, 역할 기반 접근, 실시간 알림, 사용자 생성 콘텐츠가 있다. 행 수준 보안, 엣지 함수로 비즈니스 로직을 위한, 그리고 수평으로 확장할 수 있는 능력이 필요하다.
이것은 CMS 프로젝트가 아니다 — 이것은 애플리케이션 백엔드 프로젝트다. Supabase는 정확히 이를 위해 구축되었다.
시나리오 4: 내부 지식 기반
최고의 선택: Payload 또는 Directus
200명 규모 회사의 내부 wiki/지식 기반. 리치 텍스트 콘텐츠, 분류, 검색, 역할 기반 접근. 콘텐츠 편집자는 기술적에서 비기술적까지 다양하다.
CMS 둘 다 여기서 잘 작동한다. Directus는 비기술 팀의 경우 약간의 유리함을 가지고 있는데 관리 패널은 사용자 정의하는 데 코드가 필요하지 않기 때문이다. Payload는 세련되고 브랜드된 프론트엔드 경험을 원하는 경우 더 낫다.
마이그레이션 경로 및 종속성 고려사항
종속성은 진짜다. 약속하기 전에 생각해라.
Directus는 종속성이 가장 적다. 데이터베이스 스키마가 CMS와 독립적이므로. Directus를 제거하면 여전히 깨끗하고 표준 SQL 데이터베이스가 있다. 데이터가 소유 형식에 갇혀있지 않다.
Payload는 표준 Postgres(또는 MongoDB) 테이블에 데이터를 저장하지만 스키마는 Payload 규칙을 따른다. 떠나면서 마이그레이션은 일부를 재구조화해야 하지만 데이터는 여전히 표준 데이터베이스에 있다.
Supabase는 그냥 Postgres다. 종속성 없음. Supabase가 내일 사라지면, 데이터베이스 덤프를 가져가서 어떤 Postgres 인스턴스에서든 실행할 수 있다. 일부 API 호출을 바꿔야 하지만 데이터와 스키마는 완벽하게 무결하다.
세 가지 모두 Contentful이나 Sanity 같은 소유 CMS 플랫폼과 비교하면 종속성에서 잘 점수를 받는다. 데이터가 누군가 else's 클라우드에 있고, 내보내기는 항상 부분 프로세스다.
FAQ
Supabase를 헤드리스 CMS로 사용할 수 있나?
Technically 맞지만 CMS 기능을 처음부터 구축할 것이다 -- 콘텐츠 편집 UI, 미디어 관리, 수정 이력, 게시 워크플로우. 개발자 전용 콘텐츠 관리의 작은 프로젝트의 경우 작동할 수 있다. 비기술 편집자를 포함하는 무엇이든 Payload 또는 Directus 같은 실제 CMS를 사용하고, 필요하면 애플리케이션 데이터로 Supabase와 연결해라.
Payload는 정말 무료인가? 함정이 뭔가?
Payload CMS는 MIT 라이선스 아래 정말로 오픈 소스다. 무료로 영구적으로 자체 호스팅할 수 있다. Payload Cloud는 그들의 유료 관리형 호스팅 서비스이며 $35/월부터 시작한다. 함정이 있다면, 기능이 있는데 일부는 Payload Cloud에서 프리미엄인데, 폼 빌더와 SEO 플러그인처럼 호스팅 환경에서 이점이 있다. 핵심 CMS는 전혀 무료로 사용한다.
Directus와 Supabase를 함께 사용할 수 있나?
절대, 그리고 이것은 나가 여러 번 사용한 패턴이다. Directus를 Supabase Postgres 데이터베이스에 지점한다. Directus 관리 패널로 콘텐츠 관리를 얻고 Supabase의 실시간 구독, 인증, 애플리케이션 기능을 위한 엣지 함수를 얻는다. 두 도구는 다른 레이어에서 작동하기 때문에 상호 보완한다.
Next.js 프로젝트에 최고는 뭔가?
Payload, 그리고 가깝지 않다. Payload 3.0 이후, CMS는 플러그인으로 Next.js 애플리케이션 내부에서 실행된다. Server Components의 데이터베이스 쿼리에 대한 오버헤드 없이 Local API를 얻는다. 네이티브 라이브 미리보기, 하나의 배포. 우리는 Next.js 개발 작업에서 계속 조합을 사용한다.
이것들이 2026년 Strapi와 어떻게 비교되나?
Strapi v5는 견고한 옵션이지만 몇 가지 영역에서 뒤처진다. 관리 패널이 Payload의와 비교하면 구식처럼 느껴진다. TypeScript 지원이 그리 강하지 않고, 라이선싱 모델이 더 제한적이 되었다. Directus는 데이터베이스 래핑 접근 방식으로 비슷한 것을 제공하지만 더 현대적인 UI를 가지고 있다. Payload는 TypeScript 팀에 더 나은 DX를 제공한다. Strapi의 주요 장점은 더 큰 플러그인 에코시스템과 더 큰 커뮤니티지만, 격차가 닫혀가고 있다.
Sanity, Contentful, 또는 다른 SaaS CMS 플랫폼은?
Sanity와 Contentful은 훌륭한 제품이지만 소유 SaaS 플랫폼이다. 데이터가 서버에 산다. 가격은 사용량으로 확장된다(그리고 빠르게 비쌀 수 있다), 인프라에 의존한다. Directus, Payload, Supabase는 모두 오픈 소스이고 자체 호스팅 가능하다. 데이터 소유, 비용 제어, 배포 유연성이 당신에게 중요하면 오픈 소스 옵션이 승리한다. 우리는 헤드리스 CMS 개발 페이지에서 더 상세히 다룬다.
어느 것이 최고의 플러그인/확장 에코시스템을 가지나?
Directus는 커스텀 인터페이스, 디스플레이, 모듈을 위한 커뮤니티 확장이 있는 마켓플레이스를 가지고 있다. Payload는 SEO, 폼, 중첩 문서, 리디렉션을 위한 공식 플러그인과 함께 성장하는 플러그인 에코시스템을 가지고 있다. Supabase는 Postgres 확장(수백 개)을 가지고 있는데 다른 목적을 제공하지만 믿을 수 없을 정도로 강력하다. CMS 특정 플러그인의 경우, Directus는 현재 가장 많은 옵션을 가지고 있다.
제한된 예산이 있는 작은 팀에 최고는 뭔가?
Payload를 Vercel의 무료 계층 또는 Railway의 취미 계획에서 자체 호스팅한다. 낮은 트래픽 프로젝트에 대해 0 월별 비용으로 전체 CMS를 얻는다. Supabase의 무료 계층도 프로토타이핑에 우수하다. Directus는 무료 클라우드 계층이 없으므로 자체 호스팅이 필요하다(하지만 $5/월 VPS에서 실행된다). 예산이 빡빡하고 올바른 아키텍처를 선택하는 데 도움이 필요하면, 우리에게 연락해라 -- 우리는 많은 팀이 가장 비용 효율적인 아키텍처를 찾는 것을 도왔다.