Full-Stack Canlı

Blog Platformu (Full-Stack)

React, Express, PostgreSQL, Prisma, Cloudinary ve Docker ile inşa edildi. JWT oturum yönetimi ve rol bazlı yetkilendirme (RBAC) içerir.

Canlı DemoGizli Repo (Private)

1. Genel Bakış & Sistem Kapsamı

Blog Platformu; Katmanlı Mimari prensipleriyle sıfırdan inşa edilmiş, JWT tabanlı oturum yönetimi, rol bazlı yetkilendirme (RBAC) ve dinamik filtreleme sunan üretim seviyesinde bir Full-Stack uygulamadır. İstemci (SPA) ve sunucu (REST API) katmanlarının birbirinden tamamen ayrıştırıldığı (decoupled) modern bir web ekosistemidir.

2. Sistem Mimarisi & Teknoloji Yığını

Client (React + Vite SPA · Vercel Edge)

│── 1. REST API Requests (JSON · Axios Interceptor + Dual JWT Bearer)

│ └──► Express.js Server (Render Docker Container)

├── Controllers → Services → Repositories

├── Middleware (JWT Auth, RBAC, Zod Preprocessing, Rate Limiting)

└── Prisma ORM (v7) ──► PostgreSQL (Neon Serverless)

│

└── 2. Media / Image Uploads (Multipart Form-Data)

└──► Multer Stream ──► Cloudinary CDN (Persistent Media Storage)

3. Tamamlanan Full-Stack Mühendisliği

  • İstemci Mimarisi (Frontend): React, Vite, TypeScript, Tailwind CSS ve React Router v6 kullanılarak Vercel üzerinde koşan, mobil öncelikli SPA.
  • API Katmanı (Backend): Node.js, Express.js ve TypeScript ile geliştirilen; Routes → Controllers → Services → Models düzenine sahip katmanlı mimari.
  • Veritabanı & ORM: PostgreSQL (Neon Serverless) ve Prisma ORM entegrasyonu; ilişkisel veri modelleme.
  • Güvenlik & Doğrulama: Axios interceptor tabanlı çift JWT akışı, Zod payload doğrulaması ve IP bazlı Rate Limiting.
  • DevOps & Depolama: API servisi için Render Docker konteynırlaştırması, medya dosyaları için Cloudinary CDN entegrasyonu.

4. Mühendislik Zorlukları & Çözümleri

  • Kalıcı Medya (Ephemeral Storage): Render'ın geçici dosya sistemi nedeniyle kaybolan medya dosyaları sorunu, Cloudinary CDN ve Multer entegrasyonu ile kalıcı çözüme kavuşturuldu.
  • Defansif Tip Dönüşümü: Görsel yüklemelerinde gelen multipart/form-data payload tutarsızlıkları, Zod preprocess ve Service katmanındaki savunmacı dönüşümlerle normalize edildi.
  • SPA Yönlendirme Kontrolü: Derin bağlantılardaki (deep-linking) 404 hatalarını önlemek için Vercel üzerinde rewrite kuralları (vercel.json) yapılandırıldı.