Case Study: Ali Osman Ulusoy Turizm – Dijital Dönüşüm & Operasyonel Modernizasyon
Proje Özeti: Köklü bir şehirlerarası otobüs firmasının kullanıcı deneyimini (B2C) modernize etmek ve arka plandaki operasyonel süreçleri (B2B) tek bir merkezden yönetilebilir hale getirmek amacıyla geliştirilmiş, uçtan uca full-stack web otomasyonu.
1. Projenin Amacı ve Teknik Yığın (Tech Stack)
Sistem; kullanıcı arayüzü, yönetim paneli ve servis katmanı olmak üzere 3 ana katmandan (ulusoy-front, ulusoy-admin, ulusoy-back) oluşmaktadır. Modern web standartları ve ölçeklenebilirlik gözetilerek tasarlanmıştır.
- Frontend (Kullanıcı Arayüzü - B2C): Next.js v16 (App Router), TypeScript, Tailwind CSS v4, Radix UI, React Hook Form + Zod, Zustand.
- Admin Panel (Operasyonel Arayüz - B2B): Next.js v15 (App Router), Material UI (MUI v7) + Tailwind CSS entegrasyonu, Tiptap, React Leaflet.
- Backend (API & Veritabanı): NestJS v10 (Modüler mimari), Prisma ORM.
2. Mimari ve Performans Kararları
Sistemin yüksek trafikli dönemlerde (bayram, tatil vb.) performanslı çalışabilmesi ve SEO açısından görünür olması için hibrit bir render mimarisi kurgulanmıştır.
- SSR & SEO Optimizasyonu: Ana sayfa ve kurumsal sayfalar gibi arama motorları için kritik olan sayfalar Server-Side Rendering (SSR) ile sunularak layout geçişleri optimize edilmiştir.
- CSR ile Dinamik Etkileşim: Bilet arama motoru, dinamik fiyatlandırma, koltuk seçimi ve sepet işlemleri Client-Side Rendering (CSR) olarak çalıştırılır. Bu sayede sunucu yükü azaltılarak anlık DOM güncellemeleri pürüzsüz sağlanır.
- State ve Caching: API'den gelen veriler (seferler, müsait koltuklar) için
React Queryile server state yönetimi yapılmış; kullanıcı oturumu ve filtreler gibi global state'ler içinZustandtercih edilmiştir.
3. Admin Paneli ve Operasyonel Modüller
Admin paneli, sadece basit bir içerik yönetim sistemi değil; bir otobüs firmasının tüm can damarlarını yönetecek şekilde, operasyonel verimlilik odaklı kodlanmıştır.
- Routes (Sefer ve Fiyat Yönetimi): Seferlerin oluşturulduğu ve duraklar arası ara fiyatlandırma algoritmalarının hesaplandığı en kritik modül.
- Buses & Features (Filo Yönetimi): Otobüslerin plakaları, özellikleri (Wi-Fi, TV, 2+1 / 2+2) ve koltuk dizilim şablonlarının yönetimi.
- Stations (Durak/Otogar Yönetimi): Türkiye geneli kalkış/varış noktalarının koordinat ve terminal bilgileriyle kaydı.
- Live Map (Canlı Filo Takibi): Araçların operasyonel bazda harita üzerinden izlenebilmesi için hazırlanan altyapı modülü.



4. Veri Akışı ve API Mimarisi
Uygulamaların veri akışı bağımsız bir servis yaklaşımıyla tasarlanmıştır. Frontend ve Admin panelleri doğrudan veritabanına bağlanmaz; tüm veri alışverişi Axios interceptor'ları aracılığıyla, NestJS backend API'si üzerinden REST mimarisiyle sağlanır.
Bilet satışı gibi anlık veri gerektiren durumlarda, API üzerinden gerçek zamanlı koltuk doluluk oranları kontrol edilerek race-condition (aynı koltuğun iki kişiye satılması) sorunlarının önüne geçilmiştir. Güvenlik, NextAuth / JWT token tabanlı kimlik doğrulama mekanizmalarıyla sağlanmaktadır.
5. Altyapı, Dağıtım ve Sistem (Deployment)
Projenin mimarisi sadece geliştirme ortamında bırakılmamış, modern sistem yöneticiliği (SysAdmin) prensipleriyle bulut ortamına taşınmıştır.
Projenin (Frontend, Admin ve Backend) tüm katmanları, yurtdışı (Bulgaristan) lokasyonlu bir VDS üzerinde, Ubuntu 24.04 işletim sistemi ortamında Coolify kullanılarak tamamen izole bir Docker konteyner mimarisiyle canlıya alınmıştır. Bu sayede uygulamanın CI/CD süreçleri, veritabanı yönetimi ve sunucu kaynak optimizasyonu tek bir merkezden profesyonelce yönetilmektedir.
Deployment sırasında ortam değişkenleri (.env) izole VDS üzerinde enjekte edilmiş ve Docker Cache optimizasyonları ile derleme süreçleri hızlandırılmıştır.
Demo İçin Tıklayınız
Yasal Uyarı: Bu proje, tamamen eğitim, portfolyo sergileme ve yazılım geliştirme yetkinliklerini gösterme amacıyla hazırlanmış bağımsız bir konsept (rework) çalışmasıdır. Projenin, Ali Osman Ulusoy Turizm veya bağlı kuruluşlarıyla hiçbir resmi bağı, sponsorluğu veya ticari ilişkisi bulunmamaktadır. Proje içerisinde kullanılan logolar, marka isimleri ve görseller ilgili hak sahiplerinin mülkiyetindedir. Bu sistem üzerinden hiçbir şekilde gerçek bilet satışı veya ticari işlem yapılmamaktadır.













