
Directus CMS Rehberi: Geliştiriciler İçin Veritabanı Öncelikli Headless CMS
Çoğu headless CMS, veri modelinizi kendi sistemi içinde oluşturmanızı ister. Directus bunu tersine çevirir — mevcut SQL veritabanınızı sarar ve şemanıza dokunmadan anında REST ve GraphQL API'leri sunar. ~34,5 bin GitHub yıldızıyla Tripadvisor, Adobe ve Mercedes-Benz gibi şirketlerin benimsediği Directus, 2026'nın en iyi headless CMS seçenekleri arasında en yetenekli açık kaynak alternatiflerinden biridir.
| Özellik | Detay |
|---|---|
| Tür | Açık kaynak headless CMS |
| Mimari | Veritabanı öncelikli (mevcut SQL veritabanlarını sarar) |
| Veritabanları | PostgreSQL, MySQL, MariaDB, SQLite, OracleDB, CockroachDB, MS-SQL |
| API'ler | REST + GraphQL (eş zamanlı) |
| Kendi Barındırma | $5M gelirin altında ücretsiz (MIT lisansı) |
| Cloud | Aylık $25'tan itibaren |
| Yapay Zeka Özellikleri | MCP sunucusu, Yapay Zeka Asistanı (çok sağlayıcılı) |
| İşbirlikçi Düzenleme | v11.15'ten itibaren yerel özellik |
| En İyi Kullanım | Mevcut veritabanları olan ekipler, API öncelikli projeler |
| İdeal Olmayan Durumlar | Görsel sayfa oluşturma, NoSQL, basit bloglar |
| GitHub | ~34,5 bin yıldız |
| Son Sürüm | v11.16 (Nisan 2026) |
Directus CMS Nedir?
Directus, mevcut herhangi bir SQL veritabanını anında REST ve GraphQL API'leriyle saran açık kaynak bir headless CMS'tir. Strapi veya Payload'ın aksine, Directus kendi veritabanı şemasını oluşturmaz — sizin şemanızı yansıtır. Directus'un resmi dokümantasyonuna göre PostgreSQL, MySQL, MariaDB, SQLite, OracleDB, CockroachDB ve MS-SQL dahil 7 veritabanını destekler ve $5M gelirin altındaki kuruluşlar için ücretsizdir.
Bunu veritabanınızın üzerinde duran akıllı bir katman olarak düşünebilirsiniz. 50 tabloya sahip mevcut bir PostgreSQL veritabanı getiriyorsunuz, Directus'u buna yönlendiriyorsunuz ve dakikalar içinde tam bir yönetici arayüzüne, rol tabanlı erişim kontrolüne ve hem REST hem de GraphQL uç noktalarına sahip oluyorsunuz. Hiçbir göç betiği yok. Hiçbir veri yeniden yapılandırması yok.
Pratikte "veritabanı öncelikli" kavramı tam olarak budur ve bu, Strapi'nin kullandığı kod öncelikli yaklaşımdan (içerik türleri tanımlarsınız, Strapi veritabanı tablolarını oluşturur) ya da Payload CMS'in çerçeve içine gömülü yaklaşımından (CMS Next.js uygulamanızın içinde yaşar) temelden farklıdır.
Veritabanı Öncelikli Mimari Açıklandı
Bir istemci projesi için Directus'u mevcut bir PostgreSQL veritabanına ilk bağladığımızda, kurulumun ne kadar az şey gerektirdiği bizi şaşırttı. Directus, veritabanı şemanızı içgözlem yapar — tablolar "koleksiyon"lara, sütunlar "alanlara" dönüşür — ve zaten var olanlardan yönetici arayüzünü oluşturur.
Bu, verilerinizin hiçbir zaman tescilli bir biçimde kilitlenmediği anlamına gelir. Yarın Directus kullanmayı bırakırsanız, veritabanınız hâlâ standart bir SQL veritabanı olmaya devam eder. İçeriğinizin kendi sunucularında kendi biçimlerinde yaşadığı Contentful veya Sanity ile bunu yapmayı deneyin.
Directus aynı zamanda sadece bir CMS de değildir. Ekip onu bileşimsel bir veri platformu olarak konumlandırıyor — insanlar bunu BaaS (Hizmet Olarak Backend), dahili yönetici panelleri ve özel gösterge panelleri için kullanıyor. CMS kullanımı en popüler olanı, ancak mimari çok daha fazlasını destekliyor.
Directus'un Temel Özellikleri
Directus çift REST ve GraphQL API'leri, ayrıntılı rol tabanlı izinler, yerleşik Flows otomasyonu, sürükle-bırak Data Studio, dijital varlık yönetimi ve 50'den fazla dil için yerel i18n desteği sunar. v11.15'ten itibaren işbirlikçi düzenleme ve Yapay Zeka Asistanı — üçüncü taraf eklentiler değil, yerel özellikler olarak — dahil edilmektedir.
Bir proje için Directus'u değerlendiriyorsanız en önemli olanlar şunlardır:
Çift REST ve GraphQL API'leri
Her iki API da aynı veriden, sıfır yapılandırmayla eş zamanlı olarak kullanılabilir. Birini ya da diğerini seçmezsiniz — ikisini birden alırsınız. Mobil ekibiniz REST kullanırken web ön yüzünüz GraphQL kullanabilir. REST API öngörülebilir bir kalıp izler (/items/{koleksiyon}) ve GraphQL uç noktası /graphql adresinde bulunur.
Flows ve Otomasyon
Flows, Data Studio arayüzüne doğrudan yerleştirilmiş Directus'un olay güdümlü otomasyon sistemidir. CRUD olaylarında (öğe oluşturuldu, güncellendi, silindi), zamanlamalarda (cron stili) veya webhook'larda iş akışlarını tetikleyebilirsiniz. İşlemler arasında e-posta gönderme, HTTP istekleri yapma, özel JavaScript çalıştırma ve veri dönüştürme yer alır.
Yapay zeka ile geliştirme yapan ekipler için Directus'un yerel bir Model Context Protocol (MCP) rehberi sunucusu bile var — ancak buna v11 bölümünde döneceğiz.
Uzantılar ve Özelleştirme
Uzantı sistemi hook'ları (sunucu tarafı olay işleyicileri), özel uç noktaları, UI panellerini, tam modülleri ve Flows için işlem düğümlerini destekler. Uzantılar, ön yüz için Vue.js ve arka yüz için düz Node.js ile oluşturulur. v11.0 sürümü, uzantıları tür tabanlı klasörlerden daha temiz bir paketlenmiş biçime yeniden yapılandırdı.
Directus'un rakiplere kıyasla özellikleri şöyle:
| Özellik | Directus | Strapi | Payload | Sanity |
|---|---|---|---|---|
| Veritabanı Desteği | 7 SQL veritabanı | PostgreSQL, SQLite | MongoDB, PostgreSQL | Barındırılmış (tescilli) |
| API Türü | REST + GraphQL | REST (GraphQL eklentisi) | Local API + REST + GraphQL | GROQ + GraphQL |
| Kendi Barındırma | Evet (ücretsiz, <$5M) | Evet (ücretsiz) | Evet (ücretsiz) | Hayır |
| Görsel Oluşturucu | Data Studio (veri odaklı) | Content-Type Builder | Live Preview | Sanity Studio |
| i18n | Yerel (50+ dil) | Eklenti tabanlı | Alan düzeyi | Belge düzeyi |
| Otomasyon | Flows (yerleşik) | Yaşam döngüsü hook'ları | Hook'lar + Jobs | GROQ destekli webhook'lar |
| Fiyatlandırma Modeli | Gelir tabanlı ($5M eşiği) | Koltuk tabanlı | Ücretsiz + Cloud | Kullanım tabanlı |
Directus v11'deki Yenilikler (2025-2026)
Directus v11; yerel MCP sunucu desteği (v11.13), OpenAI, Anthropic ve Gemini destekli Yapay Zeka Asistanı (v11.14), canlı varlık göstergeleriyle işbirlikçi düzenleme (v11.15) ve rol tabanlı dağıtım izinleriyle küresel taslak sürümleri (v11.16) sundu. Bunların hepsi yerleşik özelliklerdir, topluluk uzantıları değil.
Directus'un en hızlı ilerlediği alan burası ve rakip rehberlerin büyük çoğunluğunun gözden kaçırdığı bölüm de tam olarak bu. İlk sırada yer alan altı rehberin yalnızca biri bunlardan herhangi birini ele almaktadır.
MCP Sunucusu ve Yapay Zeka Asistanı
v11.13 sürümü, Directus'u yerel MCP sunucusuna sahip ilk CMS'lerden biri haline getirdi. Claude, ChatGPT veya MCP uyumlu herhangi bir yapay zeka aracı kullanıyorsanız, bu araçlar Directus içeriğinizi doğrudan yönetebilir — koleksiyonları okuyabilir, öğeler oluşturabilir, alanları güncelleyebilir — ve tüm bunları RBAC izinlerinize saygı göstererek yapar. MCP'ye yeniyseniz, Model Context Protocol (MCP) rehberimiz protokolü ayrıntılı olarak açıklamaktadır.
Yapay Zeka Asistanı (v11.14), MCP'den ayrıdır — OpenAI, Anthropic, Gemini ve hatta Ollama aracılığıyla yerel modelleri destekleyen Data Studio içinde yerleşik bir sohbet arayüzüdür. v11.16'ya gelindiğinde çok modlu hale geldi: işleme için görüntüleri ve PDF'leri doğrudan yapay zeka sohbetine yükleyebilirsiniz.
İşbirlikçi Düzenleme ve Taslak Sürümler
İşbirlikçi düzenleme v11.15'te canlı varlık göstergeleriyle (aynı öğeyi başka kimin düzenlediğini görebilirsiniz) ve çakışmaları önlemek için alan düzeyi kilitlemeyle hayata geçti. Aynı sürüm, rol tabanlı dağıtım izinleriyle birlikte Vercel dağıtım modülünü de ekledi.
v11.16, küresel taslak sürümlerle içerik hazırlamayı daha da ileri götürdü. Her sürümlü öğe otomatik olarak bir taslak kopya alır. Editörler değişiklikleri canlı sürüme karşı önizleyebilir ve hazır olduğunda taslakları yayına alabilir. Rol tabanlı dağıtım izinleri, içerik ekibinizin production'a yanlışlıkla bir şey göndermeden değişiklikleri hazırlayabilmesi anlamına gelir.
| Sürüm | Tarih | Temel Özellikler |
|---|---|---|
| v11.0 | 2024 | Yeni uzantı sistemi, paketlenmiş biçim |
| v11.13 | Kas. 2025 | Yerel MCP sunucu desteği |
| v11.14 | Ara. 2025 | Yapay Zeka Asistanı (çok sağlayıcılı), başlık arayüzü |
| v11.15 | Şub. 2026 | İşbirlikçi düzenleme GA, Yapay Zeka Asistanı GA, Vercel dağıtımları |
| v11.16 | Nis. 2026 | Küresel taslak sürümler, çok modlu yapay zeka, rol tabanlı dağıtım |
Directus'a Başlarken (Docker Kurulumu)
Directus'u Docker ile 2 dakikadan kısa sürede yerel olarak çalıştırabilirsiniz. directus/directus imajıyla bir docker-compose.yml dosyası oluşturun, veritabanı bağlantısını ve yönetici kimlik bilgilerini ortam değişkenleri olarak ayarlayın, ardından docker compose up komutunu çalıştırın. Directus localhost:8055 adresinde başlar.
Docker kurulumu sıfırdan başlayarak 2 dakikadan az sürdü. Yalnızca Directus kapsayıcısı değil, tam yığınla birlikte PostgreSQL dahil eksiksiz bir docker-compose.yml şu şekildedir:
# docker-compose.yml
version: "3"
services:
database:
image: postgis/postgis:16-3.4-alpine
environment:
POSTGRES_USER: directus
POSTGRES_PASSWORD: directus
POSTGRES_DB: directus
volumes:
- directus_data:/var/lib/postgresql/data
directus:
image: directus/directus:11.16
ports:
- "8055:8055"
depends_on:
- database
environment:
KEY: "your-random-key-here"
SECRET: "your-random-secret-here"
ADMIN_EMAIL: "[email protected]"
ADMIN_PASSWORD: "change-me-please"
DB_CLIENT: "pg"
DB_HOST: "database"
DB_PORT: "5432"
DB_DATABASE: "directus"
DB_USER: "directus"
DB_PASSWORD: "directus"
volumes:
- directus_uploads:/directus/uploads
volumes:
directus_data:
directus_uploads:Çalıştırın:
docker compose up -dhttp://localhost:8055 adresini açın, ayarladığınız yönetici kimlik bilgileriyle giriş yapın ve Data Studio'ya geçin. Buradan koleksiyonlar (tablolar) oluşturabilir, alanlar (sütunlar) tanımlayabilir ve hemen içerik yönetimine başlayabilirsiniz. KEY ve SECRET ortam değişkenleri JWT token üretimi için kullanılır — production'da yukarıdaki yer tutucular değil, rastgele dizeler kullanın.
Directus SDK ile Veri Sorgulama
Directus JavaScript SDK, hem REST hem de GraphQL aracılığıyla verilerinize tür güvenli erişim sağlar. @directus/sdk paketini yükleyin, createDirectus() ile bir istemci oluşturun ve yerleşik filtreleme, sıralama ve alan seçimiyle koleksiyonları getirmek için readItems() kullanın.
SDK'nın bileşimsel kalıbı, Supabase'in istemcisi gibi kütüphanelerle çalıştıktan sonra sezgisel geldi. Temel bir istemciyle başlıyorsunuz ve işlevleri birleştirerek yetenekler ekliyorsunuz:
// lib/directus.ts
import { createDirectus, rest, readItems, createItem } from '@directus/sdk';
const client = createDirectus('http://localhost:8055').with(rest());
// Yayınlanmış makaleleri belirli alanlarla getir
const articles = await client.request(
readItems('articles', {
fields: ['id', 'title', 'slug', 'content', 'author.name'],
filter: {
status: { _eq: 'published' }
},
sort: ['-date_published'],
limit: 10
})
);Öğe oluşturma aynı kalıbı izler:
// Yeni bir makale oluştur
const newArticle = await client.request(
createItem('articles', {
title: 'My New Post',
slug: 'my-new-post',
content: '<p>Hello from Directus.</p>',
status: 'draft'
})
);Kimlik doğrulama için staticToken() (sunucudan sunucuya iletişim için) ve authentication() (giriş akışları olan kullanıcı uygulamaları için) arasında seçim yaparsınız:
import { createDirectus, rest, staticToken } from '@directus/sdk';
// Statik token ile sunucu tarafı
const client = createDirectus('http://localhost:8055')
.with(staticToken('your-api-token'))
.with(rest());REST API Örnekleri
Her SDK metodu eşdeğer bir REST uç noktasına sahiptir. Doğrudan curl veya fetch ile çalışmayı tercih ediyorsanız:
# Yayınlanmış makaleleri getir
curl "http://localhost:8055/items/articles?filter[status][_eq]=published&sort=-date_published&limit=10&fields=id,title,slug"
# Yeni bir öğe oluştur
curl -X POST "http://localhost:8055/items/articles" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title": "My Post", "status": "draft"}'GraphQL Sorguları
Aynı veriye /graphql adresindeki GraphQL üzerinden de erişilebilir:
query {
articles(
filter: { status: { _eq: "published" } }
sort: ["-date_published"]
limit: 10
) {
id
title
slug
content
author {
name
}
}
}GraphQL'i ayrıca yapılandırmanıza veya etkinleştirmenize gerek yoktur — REST ile birlikte her zaman kullanılabilir.
Next.js ile Directus (Çerçeve Entegrasyonu)
Directus'u Next.js'e bağlamak üç adım alır: @directus/sdk paketini yükleyin, bir lib/directus.ts istemcisi oluşturun ve readItems() kullanarak Server Component'larınızda veri alın. Directus ham JSON döndürür, dolayısıyla satıcıya özgü bileşenler olmadan render üzerinde tam kontrole sahipsiniz.
Directus ile çalışmanın en temiz kısmı bu. Özel bir çerçeve adaptörü yok, Directus'a özgü React bileşeni yok, derleme eklentisi yok. Sadece veri alımı. Next.js'de herhangi bir REST API ile çalışmışsanız, bunu zaten biliyorsunuzdur. Çerçeve seçimleri için Next.js vs Remix karşılaştırmamıza bakın.
Önce paylaşılan istemciyi oluşturun (bu, SDK bölümündeki aynı dosyadır, ancak dağıtılan örneğiniz için yapılandırılmıştır):
// lib/directus.ts
import { createDirectus, rest, staticToken, readItems } from '@directus/sdk';
const directus = createDirectus(process.env.DIRECTUS_URL!)
.with(staticToken(process.env.DIRECTUS_TOKEN!))
.with(rest());
export default directus;
export { readItems };Ardından Server Component'ta kullanın — useEffect yok, yükleme durumu yok, sadece async/await:
// app/blog/page.tsx
import directus, { readItems } from '@/lib/directus';
export default async function BlogPage() {
const posts = await directus.request(
readItems('posts', {
fields: ['id', 'title', 'slug', 'excerpt', 'date_published'],
filter: { status: { _eq: 'published' } },
sort: ['-date_published'],
})
);
return (
<main>
<h1>Blog</h1>
{posts.map((post) => (
<article key={post.id}>
<h2><a href={`/blog/${post.slug}`}>{post.title}</a></h2>
<p>{post.excerpt}</p>
<time>{post.date_published}</time>
</article>
))}
</main>
);
}Hepsi bu. Satıcı bağımlılığı yok. Aynı yaklaşım Astro, Nuxt, SvelteKit veya HTTP isteği yapabilen herhangi bir çerçeveyle çalışır. Directus'un resmi dokümantasyonu Astro ve Nuxt için çerçeveye özgü kılavuzlar içeriyor ama kalıp aynı: istemci oluştur, readItems() çağır, render et.
Directus CMS Fiyatlandırması ve Lisanslaması (2026)
Directus, yıllık geliri veya finansmanı $5M'ın altındaki kuruluşlar için MIT lisansı kapsamında kendi barındırma için ücretsizdir. $5M üzerinde, production kullanımı için ticari lisans gereklidir. Directus Cloud, fiyatlandırma sayfalarına göre aylık $25 (Starter) ile başlar ve Professional planlar aylık $49-$499 arasındadır.
$5M Gelir Eşiği
Bu, Directus hakkında tek en önemli iş gerçeğidir ve çoğu rehber bunu ya gömer ya da tamamen atlar. İşte nasıl çalıştığı:
- Yıllık gelir veya toplam finansman $5M altında: Sonsuza kadar ücretsiz. MIT lisansı. Her yerde kendi barındırma. Özellik kısıtlaması yok.
- Production'da $5M üzerinde: Ticari lisans gereklidir. Fiyatlandırma için Directus satış ekibiyle iletişime geçin.
- Geliştirme ve test: Şirket büyüklüğünden bağımsız olarak her zaman ücretsiz. Eşik yalnızca production dağıtımları için geçerlidir.
$5M rakamı, yalnızca geliri değil, risk sermayesi finansmanını da içerir. Yani $6M finansman almış erken aşama bir girişim teknik olarak eşiğin üzerindedir. Pratikte Directus, erken aşama şirketlere karşı uygulamada agresif davranmadı, ancak bunu planlamanıza dahil etmelisiniz.
Cloud Planları
Altyapıyı yönetmek istemiyorsanız, Directus Cloud barındırma, yedekleme ve güncellemeleri üstlenir:
- Starter: Aylık $25 — küçük projeler, kişisel siteler için ideal
- Professional: Aylık $49-$499 — depolama, bant genişliği ve varlık dönüşümleriyle ölçeklenir
- Enterprise: Özel fiyatlandırma — SLA, özel altyapı, öncelikli destek
Koltuk başına lisans yok. Tüm ekibiniz aynı planı kullanır. Bunu kullanıcı başına ücret alan Contentful ile (Contentful fiyatlandırma rehberimize bakın) ya da API kullanımı ve veri seti bant genişliğine göre ücret alan Sanity ile karşılaştırın.
| CMS | Ücretsiz Katman | Ücretli Başlangıç | Fiyatlandırma Modeli | Kendi Barındırma |
|---|---|---|---|---|
| Directus | Evet (<$5M gelir) | Aylık $25 (Cloud) | Gelir tabanlı | Evet |
| Strapi | Evet (tamamen açık kaynak) | Aylık $29 (Cloud) | Koltuk tabanlı | Evet |
| Payload | Evet (tamamen açık kaynak) | Cloud (beta) | TBD | Evet |
| Contentful | Evet (sınırlı) | Aylık $300 | Koltuk + kullanım | Hayır |
| Sanity | Evet (sınırlı) | Aylık $15 | Kullanım tabanlı | Hayır |
Directus vs Strapi vs Payload: Karşılaştırma
Directus mevcut veritabanlarını göç olmadan sarar, Strapi içerik türlerinden kendi şemasını üretir ve Payload doğrudan Next.js uygulamanıza gömülür. Directus 7 veritabanını, Strapi 2'yi, Payload 2'yi destekler. Üçü de açık kaynaktır, ancak felsefeleri oldukça farklıdır.
Hem Strapi hem de Directus ile projeler geliştirdikten sonra en büyük farkın veritabanınız hakkında nasıl düşündükleri olduğunu gördük. Strapi ile yönetici arayüzünde veya kodda içerik türleri tanımlarsınız ve Strapi veritabanı tablolarını sizin için oluşturur ve yönetir. Directus ile veritabanı gerçeğin kaynağıdır — Directus onu okur ve adapte olur.
| Özellik | Directus | Strapi | Payload |
|---|---|---|---|
| Mimari | Veritabanı öncelikli (mevcut DB'yi sarar) | Kod öncelikli (modellerden DB üretir) | Çerçeve içine gömülü (Next.js içinde yaşar) |
| Veritabanları | PostgreSQL, MySQL, MariaDB, SQLite, OracleDB, CockroachDB, MS-SQL | PostgreSQL, SQLite | MongoDB, PostgreSQL |
| API'ler | REST + GraphQL (her ikisi de yerel) | REST (GraphQL eklenti aracılığıyla) | Local API + REST + GraphQL |
| Yönetici Arayüzü | Data Studio (Vue.js) | Content Manager (React) | Yönetici Paneli (React, gömülü) |
| GitHub Yıldızı | ~34,5 bin | ~68 bin | ~33 bin |
| Cloud Barındırma | Directus Cloud (aylık $25+) | Strapi Cloud (aylık $29+) | Payload Cloud (beta) |
Directus'u ne zaman seçmelisiniz: Mevcut bir veritabanınız var, kutudan çıkar çıkmaz çift REST+GraphQL istiyorsunuz ya da OracleDB veya CockroachDB gibi daha az yaygın veritabanlarını desteklemeniz gerekiyor.
Strapi'yi ne zaman seçmelisiniz: En büyük ekosistemi ve topluluğu istiyorsunuz, içerik türlerini bir arayüz üzerinden tanımlamayı tercih ediyorsunuz ya da mevcut bir veritabanı olmaksızın sıfırdan başlıyorsunuz. Ayrıntılar için Strapi rehberimizi okuyun.
Payload'ı ne zaman seçmelisiniz: CMS'i doğrudan Next.js uygulamanıza gömmek istiyorsunuz, TypeScript öncelikli yapılandırmayı tercih ediyorsunuz ya da HTTP'yi tamamen atlayan Local API'ye ihtiyaç duyuyorsunuz. Tam tablo için Payload CMS derinlemesine incelememize bakın.
Directus Kullanmama Zamanları
Görsel bir sayfa oluşturucuya, sıkı entegre bir Next.js çerçevesine veya NoSQL backend'e ihtiyaç duyuyorsanız Directus doğru seçim değildir. Aynı şekilde düz dosya CMS'in veya WordPress'in yeterli olacağı basit projelere de gereksiz yük ekler.
Ekiplerin Directus'u kullanmamaları gerekirken seçtiğini gördük ve kalıp genellikle şunlardan biri:
- Görsel sayfa oluşturucuya ihtiyacınız var. Directus'un Data Studio'su yapılandırılmış veri yönetimi için mükemmeldir, ancak sürükle-bırak site oluşturucu değildir. Görsel düzenleme önceliğinizse Storyblok'a bakın — Storyblok rehberimiz bunu nasıl karşılaştırdığını gösterir.
- NoSQL'e bağlısınız. Directus tasarımı gereği yalnızca SQL'dir. Verileriniz MongoDB'de yaşıyorsa Payload CMS doğal tercihtir.
- Projeniz basit bir blog. Kişisel bir blog için Docker, PostgreSQL ve Directus kurmak ciddi anlamda fazla. WordPress, Astro ile markdown dosyaları veya Ghost sizi çok daha kısa sürede yayına alır.
- Çerçeve içi CMS istiyorsunuz. CMS'inizin Next.js kod tabanınızda birinci sınıf vatandaş olarak yaşamasını istiyorsanız, Payload bunu doğal olarak yapar. Directus her zaman ayrı bir servis olarak kalır.
- Büyük bir kuruluşsunuz. Şirketiniz $5M gelir eşiğini aşıyorsa production için ticari lisans gerekir. Bu maliyeti, gelirden bağımsız olarak kendi barındırma için ücretsiz olan Strapi veya Payload gibi tamamen açık kaynak alternatiflere karşı değerlendirin.
Bunların hiçbiri kusur değil — bunlar tasarım kararları. Directus bir veri platformudur, web sitesi oluşturucusu değil. Farkı bilmek sizi aylarca sürecek hayal kırıklığından kurtarır.
SSS
Directus CMS nedir?
Directus, mevcut herhangi bir SQL veritabanını anında REST ve GraphQL API'leriyle saran açık kaynak bir headless CMS'tir. PostgreSQL, MySQL, MariaDB, SQLite, OracleDB, CockroachDB ve MS-SQL'i destekler. Geleneksel CMS'lerin aksine Directus kendi şemasını oluşturmaz — mevcut veritabanı yapınızı otomatik olarak okur ve yansıtır.
Directus gerçekten ücretsiz mi?
Directus, yıllık geliri veya toplam finansmanı $5M'ın altındaki kuruluşlar için MIT lisansı kapsamında kendi barındırma için ücretsizdir. Bu eşiğin üzerinde, production kullanımı için ticari lisans gereklidir. Geliştirme ve test ortamları her zaman ücretsizdir. Yönetilen barındırmaları olan Directus Cloud aylık $25'tan başlar.
Directus ile Strapi arasındaki fark nedir?
Directus veritabanı önceliklidir — mevcut SQL veritabanınızı şemayı değiştirmeden sarar. Strapi kod önceliklidir — içerik türleri tanımlarsınız ve Strapi veritabanı tablolarını oluşturur. Directus 7 veritabanını desteklerken Strapi 2'yi destekler. Her ikisi de REST API sunar, ancak Directus yerel GraphQL içerirken Strapi bir eklenti gerektirir.
Directus hangi veritabanlarını destekliyor?
Directus yedi SQL veritabanını destekler: PostgreSQL, MySQL, MariaDB, SQLite, OracleDB, CockroachDB ve MS-SQL. Mevcut veritabanınıza bağlanır ve şemayı otomatik olarak içgözlem yapar. Bu çoklu veritabanı desteği headless CMS'ler arasında eşsizdir — çoğu rakip yalnızca bir veya iki veritabanı motorunu destekler.
Directus WordPress'in yerini alabilir mi?
Directus, özellikle headless veya API güdümlü projeler için içerik yönetiminde WordPress'in yerini alabilir. Ancak Directus'un yerleşik ön yüzü, teması veya sayfa oluşturucusu yoktur. Next.js veya Astro gibi bir çerçeveyle kendi ön yüzünüzü oluşturmanız gerekir. Görsel düzenlemeye ihtiyaç duyan basit bloglar veya siteler için WordPress daha pratik olmaya devam eder.
Directus'un görsel editörü var mı?
Directus, yapılandırılmış veri yönetimi, gösterge paneli oluşturma ve izin yapılandırma için güçlü bir yönetici arayüzü olan Data Studio'yu içerir. Ancak Storyblok veya WordPress gibi görsel bir sayfa oluşturucusu ya da WYSIWYG site editörü sunmaz. Directus veri yönetimi için tasarlanmıştır, sürükle-bırak sayfa oluşturma için değil.
Directus e-ticaret için uygun mu?
Directus Ürün Bilgi Yönetimi sistemi olarak iyi çalışır — ürün kataloglarını modelleyebilir, özellikleri yönetebilir ve API'ler aracılığıyla veri sunabilirsiniz. Ancak bir e-ticaret platformu değildir. Alışveriş sepeti, ödeme akışı veya ödeme işleme işlevleri yoktur. İşlem katmanı için Shopify, Saleor veya Medusa ile eşleştirin.
Directus'u Next.js ile kullanabilir miyim?
Evet. @directus/sdk paketini yükleyin, Directus örneğinize işaret eden bir istemci oluşturun ve readItems() kullanarak Server Component'larda veri alın. Directus düz JSON döndürür, dolayısıyla satıcıya özgü React bileşeni gerekmez. Aynı yaklaşım Astro, Nuxt ve SvelteKit dahil herhangi bir JavaScript çerçevesiyle çalışır.
Directus işbirlikçi düzenlemeyi destekliyor mu?
Evet, sürüm 11.15'ten (Şubat 2026) itibaren. Directus, kimin neyi düzenlediğini gösteren canlı varlık göstergeleri ve çakışmaları önlemek için alan düzeyi kilitlemeyle yerel işbirlikçi düzenlemeye sahiptir. Bu yerleşik bir özelliktir, eklenti değil. v11.16'daki küresel taslak sürümlerle birlikte ekipler yayına almadan önce değişiklikleri hazırlayabilir ve önizleyebilir.
Directus MCP sunucusu nedir?
Directus, v11.13'te (Kasım 2025) yerel bir Model Context Protocol sunucusu sundu. MCP, Claude ve ChatGPT gibi yapay zeka araçlarının Directus içeriğinizle doğrudan etkileşime girmesine olanak tanır — doğal dil aracılığıyla öğeleri okuyabilir, oluşturabilir ve güncelleyebilir. MCP sunucusu mevcut RBAC izinlerinize saygı gösterir, dolayısıyla yapay zeka erişimi insan kullanıcılarıyla aynı kuralları izler.