Tüm Projeler
Topluluk Platformu 2025

Karargâh
Türkiye Airsoft Topluluk Platformu

Next.js 15TypeScriptPrismaTailwindJWT
0 Kullanıcı Tipi
JWT + Zod Güvenlik Katmanı
Prisma ORM
Next.js 15 App Router

Site İçi Görüntüler

Proje & Bağlam

Karargâh, Türkiye'nin en kapsamlı airsoft topluluk platformu. Takım yönetimi, etkinlik organizasyonu, mesajlaşma, işletme profilleri ve güvenli moderasyonu tek çatı altında toplayan kapsamlı bir dijital ekosistem.

Dört kullanıcı tipi: Oyuncu, Kaptan, İşletme, Admin. Her tip kendi yetki ve arayüzüne sahip. JWT ile erişim kontrolü, Zod ile tüm girdi doğrulama.

"Türkiye airsoft topluluğunun bir merkeze ihtiyacı var. Karargâh, o merkez." — Projenin temel vizyonu.

Ekosistem Mimarisi

Takım sistemi Kaptan rolü etrafında şekilleniyor: oluştur, logo/banner yükle, başvuru onayla, rol yönet. Prisma ORM ile ilişkisel veritabanı.

Etkinlik: açık/kapalı oyun, takım davet, otomatik kontenjan, anlık katılımcı takibi. İşletme profilleri: sahalar ve mağazalar.

Platform Özellikleri

01

Takım Yönetim Sistemi

Kaptan takım oluşturur, logo/banner yükler. Başvuru → Kaptan onay/red. Rol atama, üye yönetimi, bildirimler.

02

Etkinlik Organizasyonu

Açık/kapalı oyun, takım davet, otomatik kontenjan. Dolunca kayıt kapanır. Etkinlik sahibi katılımcıları anlık görür.

03

Rol Bazlı Yetkilendirme

JWT + Zod validasyon, CSRF, rate limiting, bcrypt. 18+ yaş doğrulama. Her kullanıcı tipi yalnızca kendi yetkili alanlara erişir.

04

Küfür Filtresi & Moderasyon

Otomatik küfür filtresi, şikayet sistemi, audit log. Admin paneli tüm ihlaller ve kararlar arşivlenir. Güvenli platform garantisi.

Teknik Yaklaşım

Next.js 15 App Router ile route grupları: (auth), (player), (captain), (business), (admin). Server Components kritik veri, Client Components etkileşim — net ayrım.

Prisma ORM type-safe PostgreSQL şeması + Prisma Migrate. Tailwind CSS utility-first — tasarım sistemi merkezi konfigürasyondan yönetiliyor.

#050505
#0a0a0a
#0a1400
#eab308
#a3e635
Next.js 15 TypeScript Prisma ORM Tailwind CSS JWT Zod bcrypt CSRF Rate Limiting Vercel PostgreSQL

Neden Next.js 15 + Prisma?

Karargâh bir içerik sitesi değil — 4 kullanıcı tipi, rol bazlı yetkilendirme, gerçek zamanlı bildirimler ve takım yönetimi gibi karmaşık ilişkiler var. Prisma ORM ile veritabanı şeması tip-güvenli, migrasyonlar otomatik. Next.js 15 App Router'ın server action'ları form işlemlerini API endpoint yazmadan hallediyor. Rate limiting, CSRF ve küfür filtresi gibi güvenlik katmanları middleware'de yönetiliyor.

Teknik Zorluklar

Rol Bazlı Route Koruması — Middleware Karmaşıklığı

⚡ Sorun

4 rol, onlarca route — her route'a ayrı yetki kontrolü: tekrar eden kod, bir değişiklik her yerde güncelleme gerektirdi.

✓ Çözüm

Next.js middleware'de JWT decode + route pattern eşleştirme. Tek noktadan yönetim, route'lar sıfır yetki kodu içeriyor.

Takım Üyeliği Atomikliği — Yarış Koşulları

⚡ Sorun

Kapasite kontrolü + üye ekleme ayrı sorgular → eşzamanlı katılım yarış koşulu, takım kapasitesi aşıldı.

✓ Çözüm

Prisma $transaction ile kontrol + ekleme atomik. Başarısız olursa rollback — tutarsız durum imkânsız.

Türkçe Karakter Küfür Filtresi

⚡ Sorun

Türkçe karakter değişimiyle (ş→s, ı→i) küfür filtresi atlatılıyordu — regex tüm varyantları yakalayamadı.

✓ Çözüm

Normalize (ş→s, ı→i...) + Set.has() O(1) kontrol. Hem Türkçe hem ASCII varyant tek geçişte yakalanıyor.