Kişisel Finans Uygulaması

Kişisel Finans Uygulaması
Kişisel Finans Uygulaması, Frontend Mentor üzerindeki bir challenge
kapsamında geliştirdiğim modern bir web uygulamasıdır. Giderleri negatif,
gelirleri pozitif değerler olarak sınıflandırarak kullanıcıların bütçelerini
kolayca yönetmesini ve finansal durumlarını net bir şekilde görmesini sağlar.
Öne Çıkan Özellikler
- Gider ve Gelir Yönetimi: Bütçeyi kolayca takip edebilmek için giderler negatif, gelirler pozitif değer olarak kaydedilir.
- Kullanıcı Dostu Arayüz: Sezgisel ve
responsive bir arayüzile akıcı bir kullanıcı deneyimi sunacak şekilde tasarlandı. - Güvenli ve Ölçeklenebilir: Performans ve güvenlik gözetilerek geliştirildi; kullanıcı verileri güvende tutulur.
Kimlik Doğrulama ve Güvenlik 🔐
-
Access ve Refresh Token Yönetimi: Uygulama, kullanıcı oturumlarını güvenli bir şekilde yönetmek için
JWT(JSON Web Token) kullanır. -
Access Token'lar: 15 dakika geçerli olan kısa ömürlü token'lardır. Süreleri dolduğunda refresh token kullanılarak yeni bir access token üretilir.
-
Refresh Token'lar: Güvenliği ve performansı artırmak için hızlı, bellek içi bir veri deposu olan Redis'te güvenli şekilde saklanır. Refresh token'lar sayesinde kullanıcılar sık sık yeniden giriş yapmak zorunda kalmadan oturumlarını sürdürebilir.
-
Token Yenileme: Access token'lar
refresh token'lar aracılığıylaher 15 dakikada bir otomatik olarak yenilenir; böylece güvenlik ile kullanım kolaylığı arasında denge sağlanır. -
Bu yapı, kullanıcı deneyimi (oturumun açık kalması) ile güvenlik (kısa ömürlü access token'lar) arasında bir denge kurar.
Kullanılan Teknolojiler 🛠️
- Next.js: Production ortamı için bir React framework'ü.
- TypeScript: JavaScript için güçlü tip desteğine sahip bir programlama dili.
- Prisma: Veritabanı yönetimi için yeni nesil bir ORM.
- PostgreSQL: Güvenilir ve sağlam bir veritabanı çözümü.
- React Query: Sunucu state yönetimi için bir veri çekme kütüphanesi.
- Framer Motion: Akıcı animasyonlar ve geçişler için.
- shadcn/ui: Modern ve şık bir UI bileşen kütüphanesi.
- Redis: Refresh token'ları güvenli şekilde saklamak ve oturum state'ini yönetmek için.
Demo Giriş Bilgileri
Önceden doldurulmuş verilerle demoyu görmek için aşağıdaki bilgilerle giriş yapabilirsiniz:
- E-posta:
test@finance.com - Şifre:
Test1234
Bağlantılar
- Kaynak Kod: GitHub Deposu
- Demo: Kişisel Finans Uygulaması (Canlı)
