Teashop API Projesi

Bu proje, Teashop adlı kafe için geliştirilmiş çok katmanlı bir mimari ve Code First yaklaşımını temel alan bir API projesidir. Proje içeriğinde, çeşitli içeceklerin yönetimini sağlayan temel CRUD (Create, Read, Update, Delete) işlemlerini gerçekleştiren bir API bulunmaktadır. Hem API hem de yönetici (admin) arayüzü üzerinden gerçekleştirilen işlemler sonucunda, vitrin kısmında görüntülenmek üzere veriler bu API'lerden çekilmektedir Ekran görüntüsü 2023-12-13 232022 Ekran görüntüsü 2023-12-13 232002 Ekran görüntüsü 2023-12-13 231941 Ekran görüntüsü 2023-12-13 231925 Ekran görüntüsü 2023-12-13 231900 Ekran görüntüsü 2023-12-13 231848 Ekran görüntüsü 2023-12-13 231825 Ekran görüntüsü 2023-12-13 231806 Ekran görüntüsü 2023-12-13 231639 Ekran görüntüsü 2023-12-13 231623

Kullanılan Teknolojiler

Backend

  • C#: Backend tarafında C# dili kullanılmıştır.
  • MSSQL: Veritabanı olarak Microsoft SQL Server kullanılmıştır.
  • Swagger: API dokümantasyonu için Swagger kullanılmıştır.
  • **Code First Yaklaşımı

Frontend

  • HTML: Sayfaların yapılandırılması için HTML kullanılmıştır.
  • CSS: Stillerin belirlenmesi için CSS kullanılmıştır.
  • Bootstrap: Hızlı ve etkili bir şekilde arayüz tasarımı için Bootstrap kullanılmıştır.
  • JavaScript: Sayfa etkileşimleri için JavaScript kullanılmıştır.

Proje Yapısı ve Katmanlı Mimarisi

Proje, aşağıdaki katmanlı mimari yapısını takip eder:

  • Controllers: API isteklerini karşılayan Controller sınıfları bulunur.
  • Services: İş mantığı kurallarının uygulandığı Service sınıfları bulunur.
  • Repositories: Veritabanı işlemlerinin yapıldığı Repository sınıfları bulunur.
  • DTOs (Data Transfer Objects): Gerekli olan verilerin sadece belirli bileşenlerle paylaşıldığı DTO sınıfları bulunur.

Gereksinimler

  • .NET Core SDK

  • Microsoft SQL Server

    API Endpoints

#Aşağıda projenin API endpoint'leri bulunmaktadır:(Diğer Tüm Tablolar için Aynı İşlemler Yapıldı)

  • GET /api/drinks: Tüm içecekleri getirir.
  • GET /api/drinks/:id: Belirli bir içeceği ID'ye göre getirir.
  • POST /api/drinks: Yeni bir içecek ekler.
  • PUT /api/drinks/:id: Belirli bir içeceği günceller.
  • DELETE /api/drinks/:id: Belirli bir içeceği siler.