Neden Grav CMS Kullanıyorum?

İçerik üretmeye odaklanan sade bir CMS deneyimi

8 dk okuma Haluk HAÇKALI
Neden Grav CMS Kullanıyorum?

Neden Grav CMS Kullanıyorum?

Yıllardır farklı içerik yönetim sistemleri kullandım. WordPress kurdum, Joomla ile uğraştım, Ghost denedim, hatta bazı projelerde tamamen özel yazılmış sistemler bile kullandım. Ama bir noktadan sonra şunu fark ettim: Ben içerik üretmek, teknik altyapıyla uğraşmadan hızlı çalışmak ve sistemi gerçekten kontrol edebilmek istiyorum. İşte tam bu noktada yolum Grav CMS ile kesişti.


İçerik Yönetim Sistemlerinden Beklentim Ne?

Benim kullanım senaryom biraz karmaşık.

Bir yandan öğretmenlik yapıyorum, diğer yandan yazılım, Linux, self-hosted sistemler, Raspberry Pi projeleri, 3D printing, yapay zeka ve teknoloji içerikleriyle uğraşıyorum. Aynı zamanda performans takıntım var diyebilirim. Sadece blog sitemde değil eğitimle alakalı www.dindefterim.com sitemde de hafiflik ve hızlı sonuç almak istedim. Gereksiz şişkinlikten hoşlanmıyorum.

Bir sistem kurduğumda şunları isterim:

  • Hızlı açılmalı
  • Sunucuyu yormamalı
  • Yedeklemesi kolay olmalı
  • Gereksiz veritabanı bağımlılığı olmamalı
  • Markdown desteklemeli
  • Git ile versiyon kontrolüne uygun olmalı
  • Tasarım konusunda özgürlük sunmalı
  • Linux sunucularda rahat çalışmalı
  • SSH üzerinden yönetilebilmeli
  • Docker ile kolay entegre olmalı

Çoğu klasik CMS bir noktada bana fazla “enterprise” gelmeye başladı.

İşte Grav burada ciddi anlamda farklılaşıyor.


GRAV_CMS_3

Grav CMS Nedir?

Grav CMS PHP tabanlı, açık kaynaklı ve “flat-file CMS” mantığıyla çalışan modern bir içerik yönetim sistemi.

Peki flat-file ne demek?

Yani sistem içerikleri bir MySQL veya PostgreSQL veritabanında değil, doğrudan dosyalar içerisinde saklıyor.

Örneğin bir blog yazısı aslında şöyle bir yapı oluyor:

/user/pages/01.blog/yazi.md

Yani içerik doğrudan Markdown dosyası.

Bu yaklaşımın çok ciddi avantajları var.


GRAV_CMS_2

Grav Kullanma Sebebim: Minimalizm

WordPress yıllar içerisinde inanılmaz büyüdü.

Eskiden hafif bir blog sistemi iken artık:

  • E-ticaret
  • LMS
  • Membership
  • SEO suite
  • Builder sistemleri
  • AI entegrasyonları
  • REST servisleri

derken devasa bir yapıya dönüştü.

Bu kötü mü?

Hayır.

Ama benim gibi daha teknik çalışan biri için bazen fazla ağır.

Grav ise çok daha “temiz” hissettiriyor.

Kurulum yaptığınız anda sistem size şunu söylüyor:

“İstersen sadece içerik üret.”

Bu yaklaşımı seviyorum.


Markdown ile Çalışmak Büyük Konfor

Ben Markdown kullanmayı seviyorum.

Çünkü:

  • Hızlı
  • Düz metin
  • Git dostu
  • Uzun ömürlü
  • Editör bağımsız

Örneğin bir blog yazısını ister:

  • VS Code
  • Obsidian
  • Nano
  • Vim
  • Android editörü

üzerinden yazabiliyorum.

Sonra sunucuya push etmem yeterli.

Bu yapı özellikle teknik blog yazan insanlar için inanılmaz rahatlık sağlıyor.


Veritabanı Olmaması Neden Önemli?

Birçok kişi bunu küçük bir detay sanıyor ama aslında değil.

Veritabanı olmayınca:

  • Taşıma kolaylaşıyor
  • Backup çok basitleşiyor
  • Sunucu kaynak kullanımı azalıyor
  • Küçük VPS’lerde performans artıyor
  • SQLite/MySQL bozulma senaryoları ortadan kalkıyor

Örneğin Grav sitesini yedeklemek bazen sadece şu kadar:

tar -czf backup.tar.gz public_html/

Bitti.


Performans Konusunda Gerçekten Etkileyici

Özellikle düşük kaynaklı sistemlerde Grav çok başarılı.

Ben self-hosted sistemleri seviyorum. Raspberry Pi, Banana Pi veya düşük güç tüketimli mini sunucular üzerinde servis çalıştırmayı seviyorum.

Bu tarz sistemlerde:

  • WordPress + eklentiler
  • Elementor
  • WooCommerce

gibi yapılar bazen sistemi gereksiz yorabiliyor.

Grav ise çok daha hafif çalışıyor.

Özellikle cache sistemi oldukça başarılı.


Grav'ın Yönetim Paneli Beklediğimden İyi Çıktı

İlk başta “flat-file CMS” görünce panel tarafının zayıf olacağını düşünmüştüm.

Ama Admin Panel eklentisi gayet yeterli.

Şunları rahatlıkla yapabiliyorum:

  • Sayfa yönetimi
  • Medya yükleme
  • Tema ayarları
  • Kullanıcı yönetimi
  • Form oluşturma
  • Cache temizleme
  • Güncelleme yönetimi

Tabii WordPress kadar gelişmiş değil.

Ama benim kullanımım için yeterli.

GRAV_CMS_1


Tema Yapısı Geliştiriciler İçin Çok Güzel

Grav tarafında Twig template sistemi kullanılıyor.

Twig ile çalışmak gerçekten keyifli.

Özellikle yazılım geliştirme tarafında biriyseniz:

  • component mantığı
  • partial yapıları
  • modüler template sistemi

oldukça düzenli hissettiriyor.

WordPress’in bazı eski tema mimarileri bazen çok dağınık gelebiliyor.

Grav daha modern hissediliyor.


Grav'ın Eksileri Yok Mu?

Elbette var.

Hiçbir sistem kusursuz değil.

1. Eklenti Ekosistemi WordPress Kadar Büyük Değil

Bu çok net hissediliyor.

WordPress tarafında neredeyse her şey için bir plugin var.

Grav daha niş bir topluluğa sahip.

Bazı özellikleri kendiniz geliştirmeniz gerekebiliyor.


2. Teknik Bilgi Gerektiriyor

Grav herkes için uygun değil.

Özellikle:

  • FTP
  • SSH
  • YAML
  • Markdown
  • Linux dizin yapısı

gibi konulara uzak biriyseniz başlangıçta zorlayabilir.

Ben teknik tarafı sevdiğim için bu durum bana avantaj gibi geliyor.

Ama standart kullanıcı açısından dezavantaj olabilir.


3. Büyük Ölçekli İçerik Sitelerinde Yönetim Zorlaşabiliyor

Binlerce içerik olduğunda flat-file yaklaşımının bazı sınırları hissedilebiliyor.

Özellikle:

  • çok büyük ekipler
  • karmaşık workflow yapıları
  • gelişmiş içerik ilişkileri

gereken projelerde klasik CMS’ler daha avantajlı olabilir.


Grav'ın Artıları ve Eksileri

Özellik Avantaj Dezavantaj
Flat-file yapı Veritabanı gerektirmez Çok büyük projelerde sınırlar oluşabilir
Markdown desteği Teknik kullanıcılar için mükemmel Görsel editör sevenlere hitap etmeyebilir
Performans Çok hızlı Yanlış yapılandırmada cache karmaşık olabilir
Tema sistemi Modern ve temiz Öğrenme eğrisi var
Sunucu tüketimi Düşük RAM/CPU kullanımı Bazı pluginler optimize olmayabiliyor
Yönetim Dosya bazlı kontrol çok güçlü Teknik bilgi gerektiriyor
Güvenlik Daha küçük saldırı yüzeyi Güvenlik tamamen kullanıcı disiplinine bağlı

Peki Neden WordPress Değil?

WordPress hâlâ inanılmaz güçlü bir sistem.

Özellikle:

  • WooCommerce
  • büyük içerik ekipleri
  • SEO araçları
  • pazarlama sistemleri
  • geniş eklenti desteği

konusunda çok avantajlı.

Ama benim kullanım tarzım biraz farklı.

Ben:

  • sade sistemler seviyorum
  • terminal kullanmayı seviyorum
  • dosya tabanlı yapıları seviyorum
  • Git ile çalışmayı seviyorum
  • sistemi gerçekten kontrol etmek istiyorum

Bu yüzden Grav bana daha yakın geliyor.


Alternatif Olarak Neleri Düşündüm?

Ghost

Ghost

Çok şık.

Özellikle blog tarafında modern görünüyor.

Ama Node.js tabanlı yapısı ve kaynak tüketimi bazı küçük sunucularda bana ağır geldi.


Hugo

Hugo

Aşırı hızlı.

Ama CMS mantığından çok static generator dünyasına yakın.

İçerik yönetimi teknik olmayan kullanıcılar için zorlaşabiliyor.


Jekyll

Jekyll

GitHub Pages ile güzel çalışıyor.

Ama Ruby ekosistemiyle çok yakın olmak istemedim.


Drupal

Drupal

Kurumsal tarafta çok güçlü.

Ama benim kullanımım için fazla ağır ve karmaşık.


Strapi

Strapi

Headless mimari isteyenler için çok iyi.

Ama ben daha sade ve doğrudan içerik yönetimi istiyordum.


Sonuç

Grav herkese uygun bir sistem değil.

Ama eğer:

  • Linux seviyorsanız
  • Markdown ile çalışıyorsanız
  • Self-hosted sistemlerle uğraşıyorsanız
  • Minimalizm hoşunuza gidiyorsa
  • Performansa önem veriyorsanız
  • Teknik taraftan korkmuyorsanız

Grav gerçekten çok güçlü bir seçenek.

Benim için Grav sadece bir CMS değil.

Biraz da çalışma felsefesi.

Az katman, az karmaşa, yüksek kontrol, yüksek performans.

Sanırım bu yüzden hâlâ Grav kullanıyorum.