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:
.ownsuffix 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
- Models - Model yapısı
- Controllers - Controller yapısı
- Middleware - Middleware yapısı
- Helpers - Helper sınıfları
- Services - Servis sınıfları