Supabase: Arka Yüzü (Backend) Kendi Kod Satırınızdan Kontrol Edin

Supabase: Arka Yüzü (Backend) Kendi Kod Satırınızdan Kontrol Edin

Yazılım geliştirme takımı yeni bir fabrika uygulaması başlatıyor. İşçiler mobil telefonda vardiya başlangıcını kaydedecek, müdür tarayıcıdan kayıtları görecek, sistem bu bilgileri gerçek zamanlı olarak MES’e aktaracak.

Takım kodu yazmaya başladı, ama hızlı bir sorun çıkıyor:

“Veritabanı kuracak mı birisi? Mobil uygulamada oturum yönetimini kim kod layacak? Dosya depolama için AWS hesabı mı açmamız gerek?”

Her yeni özellik bir altyapı görevi haline geliyor. Sistem kurmak için hafta harcıyor, kod yazmak için geri kalmış oluyor.

Problemin Kökü: Backend Ağır Yükü

Fabrika yazılımını hızlı geliştirmek için sıkışıkız. Bir özellik eklemek için:

  1. Veritabanı kurmak (bağlantı, kullanıcı, yetki)
  2. Oturum sistemini kodlamak (token, refresh, timeout)
  3. API uç noktalarını yazmak (REST, GraphQL)
  4. Dosya yüklemeyi yönetmek (S3, storage, izinler)
  5. Bu sistemlerin güvenliğini sağlamak (SQL injection, CORS, auth)

Küçük bir takım bunu kendi altyapısından yapsa, yazılımcı mühendis yerine sistem yöneticisi haline geliyor. Ürüne gelecek zaman azalıyor.

Bu da Supabase’i devreye sokma sebebi.

Supabase: Üç Sistemin Tek Paketi

Supabase, açık kaynaklı bir backend hizmeti sunuyor. Postgres veritabanı, kimlik doğrulama (auth) ve dosya depolama (storage) üçünü birlikte sunar.

Basit anlatımla:

Hepsi bir API ile erişilebilir. Yazılımcı bu üçünü bağlamak için sistem kurmak yerine, kodu yazabilir.

Pratikte: Bir Fabrika Uygulaması Senaryosu

Vardiya kaydı uygulaması tasarlarken:

Adım 1: Supabase Kurulumu (dakikalar)

- Postgres veritabanı açılır (otomatik)
- Auth sistemi aktif hale gelir
- Storage bucket'ı oluşturulur (resim depolama için)

Adım 2: Tablo Tasarlanır (SQL ile)

Yazılımcı şunu yazabilir:

CREATE TABLE shifts (
  id UUID PRIMARY KEY,
  worker_id UUID REFERENCES auth.users(id),
  start_time TIMESTAMP,
  end_time TIMESTAMP,
  location TEXT
);

Adım 3: Mobil Uygulama Bağlanır

Mobil uygulamanın kod satırı:

// Kullanıcı kaydı
await supabase.auth.signUp({
  email: "isci@fabrika.com",
  password: "sifre123"
});

// Vardiya başla
await supabase.from('shifts').insert({
  worker_id: user.id,
  start_time: new Date(),
  location: 'Assembly'
});

Yazılımcı veritabanı kurmamış, oturum sistemi yazmamış, API uç noktası oluşturmamış. Supabase bunu hallediyor.

Neden Fabrika Yazılımı İçin Önemli?

Fabrika uygulamaları hızlı değişir. Bir ay önce “vardiya başlangıcını kaydet” istemi vardı, bu ay “makine bakımı notunu yazıştır” istemesi çıktı. Yazılımcı her istemi hızlı kodlamak zorunda.

Supabase ile:

Bu hız, fabrika yazılımında rekabet avantajıdır.

Açık Kaynaklı Olmasının Anlamı

Supabase açık kaynaklı. Demek ki:

  1. Kendi sunucunuzda çalıştırabilirsiniz (self-hosted). Bulut hizmetine bağlı kalmazsınız.
  2. Kodunu görebilirsiniz. Gizli ne var, anlaşılır.
  3. Topluluk tarafından geliştiriliyor. Düzeltme ve özellik eklemeleri açık tartışılır.

Fabrika yazılımının hassas veri (sipariş, malzeme, üretim) olduğu düşünülürse, self-hosted seçeneği önemlidir. Eryxon Flow ve benzer uygulamalar bu sebeple Supabase’i seçebiliyor.

Kısıtlamalar (Sade Olalım)

Supabase hızlı geliştirme için tasarlanmıştır, ama sınırları vardır:

Sonuç: Backend’i Yazılımcıya Geri Ver

Geleneksel yol: Sistem yöneticisi altyapıyı kurar, yazılımcı uygulama yazar.

Supabase’le: Yazılımcı kendi arka yüzünü kurur, ürüne odaklanır.

Fabrika yazılımı hızlı ilerlemesi gereken alanlardır. Veritabanı kurmakta vakit harcamak yerine, vardiya takibini, kalite kontrolünü, stok yönetimini kodlamak gerek.

Supabase bu odaklanmayı sağlıyor.