← Projelere Dön
Full-Stack Proje

Pulse — Blog & Mesajlaşma Ekosistemi

Katmanlı REST API mimarisi, WebSocket ile canlı iletişim ve Docker container yapısına sahip full-stack platform.

1. Genel Bakış & Problem Tanımı

Pulse, tekil frontend ve backend konseptlerinden birleşik bir full-stack mimariye geçiş amacıyla geliştirildi. Hedef; kullanıcı yönetimini, ilişkisel blog verilerini ve canlı iki yönlü mesajlaşmayı tek bir sistemde yönetmekti.

2. Sistem Mimarisi

Browser (Next.js App Router)

│── REST API Requests (Axios) ──► Express.js API ──► TypeORM ──► PostgreSQL

└── WebSockets (Socket.IO) ─────► Express.js Socket Server

3. Önemli Mühendislik Kazanımları

  • Katmanlı backend mimarisi (Routes -> Controllers -> Services -> TypeORM entities).
  • Socket.IO ile canlı olay yönetimi, oda bazlı mesajlaşma ve aktif kullanıcı takibi.
  • Temel kimlik doğrulama akışları ve bcrypt ile şifre hash'leme.

4. Mevcut Sınırlar & Planlanan İyileştirmeler

  • Kimlik doğrulama, JWT session token'ları olmadan ham şifre doğrulamasına dayanıyor (V2 için planlandı).
  • Backend senkronizasyonu geliştirme ortamında TypeORM synchronize modunu kullanıyor (Migration sistemi planlandı).
  • Kod içi API adreslerinin dinamik çevre değişkenlerine (environment variables) dönüştürülmesi.