QuestApp Backend API – Spring Boot & JWT ile RESTful Servis
Proje Hakkında
QuestApp Backend API, Java ve Spring Boot kullanılarak geliştirilmiş, full-stack sosyal medya tarzındaki bir uygulamanın backend servisidir. Proje; CRUD işlemleri, güvenlik ve temiz, katmanlı bir mimariye odaklanarak kullanıcıları, gönderileri, yorumları ve beğenileri yönetmek için bir dizi RESTful API sunar.
Backend, güvenli giriş, kayıt ve token yenileme akışlarını sağlamak için erişim token'ları (access tokens) ve yenileme token'larını (refresh tokens) içeren JWT tabanlı kimlik doğrulamayı uygular. Yetkilendirme kuralları ve güvenlik yapılandırmaları merkezi olarak yönetilerek, korumalı uç noktalar ve frontend uygulamasıyla güvenli iletişim sağlanır.
Proje, sürdürülebilirliği ve ölçeklenebilirliği artırmak için iş mantığı, veri erişimi ve web katmanlarını birbirinden ayıran katmanlı ve modüler bir mimariyi takip eder. Temiz veri transferi sağlamak ve entity modellerinin doğrudan dışarı açılmasını önlemek için DTO tabanlı istek ve yanıt modelleri kullanılır.
Standart CRUD işlemlerine ek olarak API; kullanıcı aktivite uç noktaları, avatar yönetimi, otomatik zaman damgası işleme ve merkezi istisna yönetimi gibi gelişmiş özellikler içerir. Backend, Spring Data JPA ve Hibernate kullanılarak bir MySQL veritabanı ile entegre edilmiştir ve tüm API'ler Swagger ve Postman kullanılarak belgelenmiş ve test edilmiştir.
Bu proje, eksiksiz bir full-stack uygulama oluşturmak için React frontend ile sorunsuz bir şekilde entegre olan, gerçekçi ve üretim tarzı bir backend inşa etme hedefiyle, Spring Boot ile backend geliştirme konusundaki öğrenme yolculuğumun bir parçası olarak geliştirilmiştir.
