Tüm Sayfalar / 43 - Keşfet Sayfası
Sayfa 43 / 161
İçerik Keşfi

Keşfet Sayfası

Kullanıcıların yeni müzikler keşfettiği ana merkez

Biz Ne Yaptık?

Kullanıcıların yeni müzikler bulabileceği keşfet sayfasını tasarladık. Türler, ruh halleri, dönemler ve özel kategorilerle zengin bir keşif deneyimi sunuyoruz.

Eski Yöntem

  • Sadece arama ile bulma
  • Sınırlı kategori seçenekleri
  • Statik içerik listeleri

Modern Mimari

  • Zengin filtreler: Tür, ruh hali, dönem
  • Görsel keşif: Kapak görselleriyle gezinti
  • Akıllı öneriler: Dinleme alışkanlıklarına göre

Kullanıcı Ne Yaşar?

1

Kategorileri göz atarak keşfeder

2

Ruh haline uygun müzikler bulur

3

Yeni sanatçılar ve türler keşfeder

Keşif Kategorileri

Müzik Türleri

Pop, Rock, Jazz, Klasik ve daha fazlası

Ruh Halleri

Mutlu, Huzurlu, Enerjik, Romantik

Dönemler

80'ler, 90'lar, 2000'ler, Güncel

Bölgeler

Türkçe, İngilizce, Dünya Müzikleri

Arkaplanda Neler Çalışıyor?

Keşfet sayfası açıldığında, sistem kullanıcıya zengin bir içerik deneyimi sunmak için şu işlemleri gerçekleştirir:

Kategori Verilerinin Yüklenmesi

Genre::withCount('songs')->orderBy('songs_count', 'desc')->get() sorgusu çalışır. Her tür için şarkı sayısı hesaplanır ve popülerlik sırasına göre listelenir.

Ruh Hali Filtreleme

Mood::with('playlists')->get() ile ruh halleri ve ilişkili playlistler çekilir. Her mood için renk kodu (color_hex) ve ikon bilgisi frontend'e gönderilir.

Dönem Bazlı Gruplama

Şarkılar release_year alanına göre gruplandırılır. 1980-1989 arası "80'ler", 1990-1999 arası "90'lar" olarak kategorize edilir. CASE WHEN SQL ifadesi bu gruplamayı yapar.

Bölgesel İçerik Filtreleme

Şarkıların language alanı kontrol edilir. "tr" olanlar Türkçe, "en" olanlar İngilizce kategorisine düşer. Kullanıcının tercih dili öncelikli gösterilir.

Dinamik Kapak Görseli Oluşturma

Her kategori için CollageService devreye girer. İlk 4 şarkının kapak görselleri birleştirilerek 2x2 mozaik kapak oluşturulur ve storage/category-covers/ klasörüne kaydedilir.

Lazy Loading ile Performans

Sayfa ilk açıldığında sadece görünür kategoriler yüklenir. Kullanıcı aşağı kaydırdıkça IntersectionObserver API'si tetiklenir ve yeni içerikler AJAX ile getirilir.

Keşfet

Zengin keşif deneyimi