- Role
- Full Stack Engineer


KemoRehber (Kemoterapi Web Platformu)
Genel Bakış (Overview)
KemoRehber, kemoterapi süreci geçiren hastalar ve hasta yakınları için bilgilendirme, rehberlik, danışmanlık ve birebir mentorluk hizmetleri sunan, dinamik içerik yönetimine sahip modern bir web platformudur. Proje, kurumsal bir kimlik ve güven veren bir tasarımla geliştirilmiş olup, arka planda güçlü bir yönetim paneli barındırır.
Mimari ve Teknolojiler (Architecture & Technologies)
Proje, Clean Architecture (Temiz/Soğan Mimari) prensiplerine uygun olarak Katmanlı Mimari ile geliştirilmiştir. Sürdürülebilir, test edilebilir ve genişletilebilir bir yapıdadır.
Frontend
- Framework: ASP.NET Core MVC (Razor Views)
- Markup & Styling: HTML5, CSS3, Bootstrap 5
- Scripting: JavaScript, jQuery
- UI/UX: Modern, duyarlı (responsive) ve premium web tasarımı. Yumuşak geçişli yönlendirmeler (smooth scroll), özel kart yapıları, hover efektleri ve şık animasyonlar içerir.
Backend
- Platform: .NET 6.0
- Dil: C#
- Veritabanı & ORM: Microsoft SQL Server, Entity Framework Core 6.0 (Code-First Yaklaşımı)
- Kimlik Doğrulama: ASP.NET Core Identity (Role-based Authorization)
Proje Yapısı (Project Layers)
Projemiz 3 ana katmandan oluşmaktadır:
- Core (Çekirdek Katman):
- Kemoterapi.Domain: Veritabanı varlıkları (Entity'ler) ve Enum'lar yer alır. (Örn: SitePage, PageSection, PageImage, ApplicationUser).
- Kemoterapi.Application: DTO'lar (Data Transfer Objects), arayüzler (Interfaces), servis tanımlamaları ve iş kuralları bulunur.
- Infrastructure (Altyapı Katmanı):
- Kemoterapi.Persistence: Entity Framework DbContext dosyası, veritabanı bağlantı ayarları ve Repository implementasyonları yer alır.
- Kemoterapi.Infrastructure: Loglama, cache, e-posta gönderimi veya üçüncü parti API entegrasyonları gibi altyapı hizmetleri barındırılır.
- Presentation (Sunum Katmanı):
- Kemoterapi.Mvc: Kullanıcının etkileşime girdiği ana web projesidir. Frontend bileşenlerini ve Admin Paneli'ni (Admin Area) barındırır. Sayfa yönlendirmeleri, Controller'lar, View'lar (Razor sayfaları) ve statik dosyalar (CSS/JS/Resimler) bu katmandadır.
Temel Özellikler (Features)
- Dinamik İçerik Yönetimi (CMS): Sitenin statik gibi görünen birçok sayfası arka planda tamamen dinamiktir. Yönetim paneli üzerinden sınırsız ana sayfa (SitePage), sayfa içi özel bölümler (PageSection) ve bu bölümlere ait görseller (PageImage) eklenebilir, düzenlenebilir veya silinebilir.
- Admin Paneli: İçeriğin ve görsellerin anlık olarak yönetilebildiği, güvenli ve modern arayüzlü yönetici (Admin) paneli.
- Kusursuz İstemci Deneyimi: Hash yönlendirmeleri (Anchor links) için sayfa yenilenmeden farklı sayfalar arası çalışan temiz URL yapılı pürüzsüz yatay/dikey kaydırma (smooth scroll) altyapısı.
- Mobil Uyumlu Tasarım: Her cihaza uyum sağlayan, okunabilirlik ve erişilebilirliğin ön planda tutulduğu Bootstrap Grid tabanlı akışkan yapı.
Kurulum ve Çalıştırma (Setup & Run)
Projeyi yerel ortamınızda ayağa kaldırmak için aşağıdaki adımları izleyebilirsiniz:
- Veritabanı Ayarları: Presentation/Kemoterapi.Mvc/appsettings.json dosyasını açın ve ConnectionStrings:DbConnection altındaki veritabanı bağlantı cümlenizi kendi SQL Server bilgilerinize göre güncelleyin.
- Migration ve Veritabanı Oluşturma: Visual Studio üzerinde Package Manager Console ekranını açın. Default Project (Varsayılan Proje) açılır menüsünden Infrastructure\Kemoterapi.Persistence projesini seçtiğinizden emin olun. Console alanına Update-Database komutunu yazıp Enter'a basarak veritabanını oluşturun.
- Projeyi Başlatma: Kemoterapi.Mvc projesine sağ tıklayıp "Set as Startup Project" diyerek başlangıç projesi olarak ayarlayın. Ardından F5 veya Ctrl+F5 ile projeyi çalıştırın.