Ana içeriğe geç

Mimari Genel Bakış

CyberCert platformu, Laravel 12 tabanlı modern bir RESTful API mimarisi kullanmaktadır.

Teknik Stack

  • Backend Framework: Laravel 12
  • PHP Version: 8.2.29
  • Authentication: Laravel Sanctum 4
  • Frontend Styling: Tailwind CSS 4
  • Testing: Pest 3, PHPUnit 11

Mimari Katmanlar

1. HTTP Katmanı

  • Routing: Modüler route yapısı (routes/api/*.php)
  • Middleware: SetUserLocale, PermissionMiddleware
  • Controllers: app/Http/Controllers/Api/* (24 controller)
  • Resources: API response formatları

2. Domain Katmanı

  • Models: 19 Eloquent modeli
  • Observers: 17 observer (otomatik UUID, slug, lifecycle)
  • Relationships: BelongsTo, HasOne, HasMany, BelongsToMany, MorphMany

3. Servis Katmanı

  • Services: CurrencyService (döviz kuru servisleri)
  • Helpers: LocaleHelper, TranslationHelper
  • Traits: HasPermissions (RBAC yönetimi)

4. Veri Katmanı

  • Migrations: 43 migration dosyası
  • Seeders: 7 seeder (Role, Locale, Currency, vb.)
  • Factories: Model factory'leri

Güvenlik

  • Authentication: Laravel Sanctum token-based
  • Authorization: RBAC (Role-Based Access Control)
  • Permission System: .own suffix ile kaynak sahipliği kontrolü
  • System Roles: system.toor, server.root (gizli anahtar ile)

Özellikler

  • Soft Delete: Tüm modellerde yumuşak silme
  • UUID: Public erişim gereken kayıtlarda UUID kullanımı
  • Localization: Çok dilli destek (10+ dil)
  • Audit Logging: Tüm işlemlerin kaydı
  • Cache Management: Para birimi ve çeviri cache'leri

API Versiyonlama

Tüm API endpoint'leri /api/v1 prefix'i altında versiyonlanmıştır.

İlgili Dokümantasyon