Aktif Geliştirme

TaskFlow (Real-Time Kanban)

Trello ve Jira standartlarında, çift yönlü gerçek zamanlı veri akışı sunan iş birliği aracı. React, Redux Saga, Node.js, Socket.IO ve güvenli Session mimarisiyle inşa ediliyor.

Gizli Repo (Private)

1. Genel Bakış & Sistem Kapsamı

TaskFlow; takımların Kanban metodolojisiyle iş yönetebildiği, sürükle-bırak operasyonlarının WebSocket mimarisiyle diğer kullanıcılara anlık yansıdığı kurumsal bir Full-Stack web platformudur. Temel mühendislik odağı; karmaşık asenkron durumları (side-effects) ve çok kullanıcılı eş zamanlı veri akışını veri bütünlüğünü bozmadan yönetmektir.

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

Client (React + Vite · TypeScript · Chakra UI)

│── 1. Real-Time Sync (Socket.IO Client)

│ └──► Room-Based Channels (joinBoard, cardMoved, columnUpdated)

│── 2. Asynchronous State Management (Redux + Redux Saga)

│ └──► Optimistic UI Drag-and-Drop + Rollback on Failure

└── 3. REST API Ingestion (Axios withCredentials + Sessions)

└──► Express.js Server (Docker Compose)

├── Middleware (Session Guard, Handshake Verification, Central Error Handling)

├── Layered Design (Routes → Controllers → Services → Repositories)

└── PostgreSQL Database (Atomic Transactions for Positional Reordering)

3. Uçtan Uca Mühendislik Mimarisi

  • Frontend & Asenkron State: React (Vite) ve TypeScript temeli; asenkron API çağrıları ile WebSocket event'lerini merkezi olarak yönetmek için Redux + Redux Saga kurgusu ve Chakra UI bileşen sistemi.
  • Katmanlı Backend (Clean Architecture): Node.js, Express ve TypeScript ile inşa edilen; Route → Middleware → Controller → Service → Repository → Database ayrımına sahip modüler mimari.
  • İlişkisel Veri & Transaction Bütünlüğü: PostgreSQL ve ORM entegrasyonu; kart taşıma ve sıra (order) güncellemelerinde veri tutarsızlığını önleyen atomik veritabanı işlemleri (Transactions).
  • Gerçek Zamanlı İletişim (WebSocket): Socket.IO ile pano bazlı oda (room) izolasyonu (joinBoard/leaveBoard) ve yetkilendirilmiş Session handshake doğrulaması.
  • DevOps & Konteynırlaştırma: Docker ve Docker Compose ile çok servisli (Backend, DB) ortamın tek komutla ayağa kaldırılması ve otomatik migration yönetimi.

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

  • Eş Zamanlı Senkronizasyon (Concurrency): Çoklu kullanıcı oturumlarında event döngülerini engellemek için panoya özel oda ayrımı (socket.to(room).emit) ve iyimser arayüz (optimistic update) yaklaşımı.
  • Sıralama (Order) Matrisi Güvenliği: Sürükle-bırak sırasında kaynak ve hedef sütunlardaki tüm kartların indeks kaymalarını veri kaybı olmadan koruyan transaction tabanlı servis mantığı.
  • Yetkilendirilmiş WebSocket Güvenliği: Socket bağlantısı esnasında güvenli oturum (Session) handshake middleware'i çalıştırılarak yetkisiz kullanıcıların odalara sızmasının engellenmesi.