Skip to content

SauWebProgramming/web-programming-project-2025-emirasili

Repository files navigation

📌 TaskFlow – Proje & Görev Yönetim Sistemi


📖 Proje Tanımı

TaskFlow, ASP.NET Core MVC kullanılarak geliştirilmiş çok kullanıcılı bir Proje ve Görev Yönetim Sistemidir.
Uygulama; kullanıcıların projeler oluşturmasını, bu projelere görevler eklemesini, görevleri yönetmesini ve rol bazlı yetkilendirme ile güvenli bir şekilde çalışmasını sağlar.


🚀 Kullanılan Teknolojiler

  • ASP.NET Core MVC
  • ASP.NET Core Identity
  • Entity Framework Core (Code-First)
  • SQL Server
  • Bootstrap 5

🔐 Kimlik Doğrulama & Yetkilendirme

  • ASP.NET Core Identity kullanılmıştır.
  • Register & Login sayfaları aktiftir.
  • Rol bazlı yetkilendirme uygulanmıştır:
    • Admin
    • Manager
    • TeamMember

Yetki Örnekleri:

  • Sadece Admin / Manager görev ve proje silebilir.
  • TeamMember sadece kendisine atanan görevleri ve projeleri görüntüler.
  • [Authorize] ve [Authorize(Roles="...")] attribute’leri kullanılmıştır.

🧩 Mimari Yapı

Projede MVC (Model–View–Controller) mimarisi uygulanmıştır.

Katmanlar:

  • Controllers: İş akışı ve yönlendirme
  • Repositories / Services: Veri erişim katmanı
  • Models (Entities): EF Core varlıkları
  • ViewModels (DTO): View’lara gönderilen sade veri modelleri

Controller’lar doğrudan DbContext kullanmamaktadır.


🗄️ Entity Framework Core & Veritabanı

  • Code-First yaklaşımı kullanılmıştır.
  • Varlıklar arası ilişkiler tanımlanmıştır:
    • Project → Tasks (One-to-Many)
    • Task → Comments (One-to-Many)
  • Veritabanı yönetimi Migrations ile sağlanmıştır.

📌 Migration Komutları

Add-Migration InitialCreate
Update-Database

veya:

dotnet ef migrations add InitialCreate
dotnet ef database update

🛠️ Temel Özellikler (CRUD)

  • Proje oluşturma, listeleme, silme
  • Görev oluşturma, güncelleme, silme
  • Görevlere yorum ekleme
  • Soft Delete (silinen görevler veritabanında tutulur)

✅ Veri Doğrulama (Validation)

  • ViewModel’lerde Data Annotations kullanılmıştır.
  • View tarafında asp-validation-for ve asp-validation-summary kullanılmıştır.

📊 Dashboard (Bonus Özellik)

  • Bugün yapılacak görevler
  • Gecikmiş görevler
  • Durum özeti
  • Haftalık ajanda görünümü

🔍 Filtreleme (Bonus)

Görevler:

  • Başlığa göre arama
  • Proje, atanan kişi ve duruma göre filtreleme

Projeler:

  • Proje adına ve manager’a göre filtreleme

🎥 Proje Sunumu

  • Video YouTube’da Liste Dışı (Unlisted) olarak paylaşılmıştır.
  • Video linki OBIS’e yüklenmiştir.

📌 Bonus Özellikler

  • Dashboard
  • Filtreleme
  • Soft Delete

About

web-programming-project-2025-emirasili created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors