Bu proje, bir yazılım şirketinin ekip içerisindeki görevleri, projeleri ve çalışanların sorumluluklarını takip etmesi amacıyla geliştirilmiş bir REST API sistemidir. Node.js ve Express.js kullanılarak geliştirilmiş olup, tamamen RESTful mimariye uygun CRUD operasyonlarını desteklemektedir.
- Backend: Node.js, Express.js
- Mimari: REST API
- Ara Katman (Middleware): Temel Loglama Sistemi
- Test Aracı: Postman
Projeyi kendi yerel ortamınızda (localhost) çalıştırmak için aşağıdaki adımları sırasıyla izleyin:
Bilgisayarınızda Node.js'in ve API testlerini yapabilmek için Postman'in yüklü olması gerekmektedir.
Proje dosyalarını indirdikten veya kopyaladıktan sonra terminalinizi (veya komut satırınızı) açın ve proje klasörünün dizinine gidin:
cd taskflow-api
Projenin çalışması için gerekli olan Express.js gibi paketleri kurmak için terminale aşağıdaki komutu girin:
npm install
Kurulum tamamlandıktan sonra sunucuyu ayağa kaldırmak için şu komutu çalıştırın:
node index.js
Terminalde Sunucu http://localhost:3000 adresinde başarıyla çalışıyor... mesajını gördüğünüzde API kullanıma hazırdır.
Sistem geçici hafıza (array) üzerinde çalışmaktadır. Temel "Görev (Task)" nesnesi aşağıdaki alanlardan oluşur:
- id (Integer): Görevin benzersiz kimliği (Otomatik artar).
- title (String): Görevin başlığı.
- description (String): Görevin detaylı açıklaması.
- priority (String): Görevin aciliyet durumu (düşük, orta, yüksek).
- assignee (String): Görevin atandığı çalışan.
- status (String): Görevin mevcut durumu (bekliyor, devam ediyor, tamamlandı).
Sistem aşağıdaki 5 temel uç noktayı sunmaktadır:
| Metod | Endpoint | Açıklama |
|---|---|---|
| POST | /tasks |
Sisteme yeni bir görev ekler. (JSON formatında body gerektirir) |
| GET | /tasks |
Sistemde kayıtlı olan tüm görevleri liste halinde getirir. |
| GET | /tasks/:id |
Sadece URL'de belirtilen ID'ye sahip görevin detaylarını getirir. |
| PUT | /tasks/:id |
Belirtilen ID'ye sahip görevin bilgilerini günceller. |
| DELETE | /tasks/:id |
Belirtilen ID'ye sahip görevi sistemden tamamen siler. |
Projeye dahil edilen Logger Middleware sayesinde, API'ye gelen her istek (Method, Endpoint ve Zaman Damgası) eşzamanlı olarak sunucu konsoluna yazdırılarak süreçlerin izlenebilirliği sağlanmıştır.
Projenin tüm CRUD operasyonları ve Logger ara katmanı Postman üzerinden başarıyla test edilmiştir. Aşağıda işlemlerin çalıştığına dair kanıt niteliğindeki ekran görüntüleri yer almaktadır:
Geliştirici: Berke Mert Öztürk







