Skip to content

hasanusluu/Micro-Service-Bank-System

Repository files navigation

Micro-Service Bank System

Modern, mikroservis mimarisiyle hazırlanmış, Dockerize edilmiş profesyonel bir bankacılık simülasyonu.

🚀 Özellikler

  • Mikroservis Mimarisi: Auth, Account, Transaction ve Frontend servisleri tamamen izole çalışır.
  • Güvenlik:
    • JWT (JSON Web Token) tabanlı kimlik doğrulama.
    • Bcrypt ile şifreleme.
    • Admin yetkilendirme sistemi.
  • Yönetici Paneli (Admin Dashboard):
    • Kullanıcıları görüntüleme ve silme.
    • Canlı para transferlerini izleme.
    • Manuel para transferi ve bakiye yükleme (Postman gerektirmez).
  • Teknoloji Yığını: Node.js, Express, SQLite, Docker, Docker Compose, Vanilla JS/CSS.

📸 Ekran Görüntüleri

1. Müşteri Giriş Ekranı

User Login Müşteriler için hızlı ve güvenli giriş arayüzü.

2. Admin Giriş Ekranı

Admin Panel (Admin Giriş Ekranı - Premium Tasarım)

3. API ve Veri Yapısı (Postman)

Bankacılık servislerimiz RESTful API standartlarına uygun detaylı veriler döndürür:

API Detail 1 API Detail 2

4. Docker Altyapısı

Tüm servisler Docker Engine üzerinde izole konteynerler olarak, senkronize bir şekilde çalışır: Docker Engine


🛠️ Kurulum ve Çalıştırma

Bu projeyi çalıştırmak için bilgisayarınızda Docker Desktop yüklü olmalıdır.

1. Hazırlık

Örnek çevre değişkeni dosyasının adını değiştirin (veya kopyalayın):

# Windows (PowerShell)
cp .env.example .env

.env dosyasındaki şifreleri dilerseniz değiştirebilirsiniz.

2. Docker ile Başlatma (Tavsiye Edilen)

Tek bir komutla tüm sistemi ayağa kaldırın:

docker-compose up --build

İlk açılışta kurulum 1-2 dakika sürebilir.

3. Kullanım

Sistem açıldığında aşağıdaki adreslerden erişebilirsiniz:

Servis Adres Açıklama
Müşteri Arayüzü http://localhost:3000 Hesap açma, para transferi, bakiye görüntüleme.
Admin Paneli http://localhost:3000/admin-login.html Yönetim ve izleme ekranı.
Auth API Port 3001 Kimlik doğrulama servisi.
Account API Port 3002 Hesap ve bakiye servisi.
Transaction API Port 3003 Para transferi servisi.

Varsayılan Admin Bilgileri:

  • Kullanıcı Adı: admin
  • Şifre: admin

📂 Proje Yapısı

ProfessionalBank/
├── auth-service/        # Kimlik doğrulama (Login/Register)
├── account-service/     # Hesap bakiyesi yönetimi
├── transaction-service/ # Para transfer işlemleri
├── frontend/            # HTML/CSS/JS Arayüzler
├── assets/              # Proje görselleri
├── docker-compose.yml   # Docker orkestrasyon dosyası
└── .env                 # Gizli anahtarlar (Docker bu dosyadan okur)

🔒 Güvenlik Notu

Bu proje eğitim amaçlıdır. .env dosyasındaki JWT_SECRET anahtarını üretim ortamında (production) mutlaka karmaşık bir şifre ile değiştirin ve .env dosyasını asla GitHub'a yüklemeyin (projede .gitignore mevcuttur).


⚠️ Yasal Uyarı

Bu proje tamamen eğitim ve kişisel gelişim amacıyla tasarlanmıştır.

  • Hiçbir ticari amaçla kullanılamaz.
  • Bu bir bankacılık simülasyonudur ve gerçek bir banka sistemini, güvenlik protokollerini veya finansal altyapıyı kapsamamaktadır.
  • Proje içerisindeki veriler hayal ürünüdür ve gerçek kişilerle/kurumlarla ilgisi yoktur.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published