Skip to content
O2BUCAKPublic

About

HaliSaha

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

29 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚽ Halı Saha İstatistik Platformu

Arkadaş gruplarınızla yaptığınız halı saha maçlarını profesyonel bir dijital lige dönüştürün! Bu platform sayesinde maçlarınızı organize edebilir, kadrolar ve taktik tahtası oluşturabilir, gol/asist ve kaleci istatistiklerini tutabilir, oyuncu puanlamaları yapabilir ve detaylı performans trendlerini analiz edebilirsiniz.


🌟 Öne Çıkan Özellikler

👥 1. Grup & Üyelik Yönetimi

  • Katılım Kodu & Davetler: 6 haneli benzersiz davet kodları veya e-posta davetleriyle kolayca gruba katılma.
  • Yönetici & Rol Yönetimi: Grup kurucuları ve atanan yöneticiler için tam yetki denetimi.
  • Misafir Oyuncu Desteği: Sisteme henüz üye olmamış arkadaşlarınızı misafir olarak ekleyip istatistiklerini tutabilme; daha sonra gerçek profille tek tıkla eşleştirme (merge).
  • Forma Numaraları: Grup üyelerine özel forma numarası tanımlama ve yönetimi.
  • Grup Kasası & Saha Ücreti Takibi: Maç başı saha ücreti, kapora, IBAN bilgisi ve oyuncu bazlı ödeme/kasa takibi.

🏆 2. Maç Organizasyonu & Canlı Taktik Tahtası

  • Kadrolar & Forma Renkleri: Takım A ve Takım B kadrolarını oluşturma, takım isimleri ve forma renklerini özelleştirme.
  • İnteraktif Taktik Tahtası: Oyuncuları saha üzerine sürükleyip dizilişleri ve taktik planlarını görselleştirme.
  • Saha & Konum Entegrasyonu: Maçın oynandığı halı sahanın adresi, Google Maps konumu ve yol tarifi bağlantısı.
  • Maç Durumu & Güvenli Geri Alma: Planlanan ve oynanan maçlar; silinen maçlar için çöp kutusu ve kurtarma (soft-delete & recovery) mekanizması.

📊 3. Kapsamlı İstatistikler & Sıralama

  • Oyuncu İstatistikleri: Maç sayısı, kazanılan maç (galibiyet), gol, asist ve skor katkısı.
  • Kaleci İstatistikleri: Kurtarış sayısı, gol yemeden tamamlanan maçlar (clean sheet).
  • Etkileşimli Tablo Sıralaması: Tablo başlıklarına (Maç, Galibiyet, Gol, Asist, Kurtarış, Ort. Puan) tıklayarak artan/azalan anlık sıralama.
  • Sezon Sistemi: Maçları belirli sezonlara atayabilme veya tüm zamanlar genelinde şampiyonluk yarışını izleme.
  • Silinen Maç Tutarlılığı: Silinen maçların tüm bireysel ve takım istatistiklerinden anında temizlenmesi.

⭐ 4. Oyuncu Profili & Performans Trendleri

  • Kariyer İstatistik Kartları: Toplam maç, galibiyet sayısı, kazanma oranı (%), 10 üzerinden ortalama oyuncu puanı, gol ve asist sayıları.
  • Performans & İstatistik Trend Grafiği (Recharts):
    • Son 5 Maç veya Tüm Maçlar filtreleme seçeneği.
    • Maç maç skor katkısı dağılımı ve kümülatif yükseliş eğrisi.
    • Maç sonuçları (Galibiyet / Beraberlik / Mağlubiyet) renk kodlaması.
  • Profil Kartı: Biyografi, lakap / forma adı ve sosyal medya hesapları (Instagram, X/Twitter, Facebook, LinkedIn).

🔒 5. Bilgi Güvenliği & KVKK Uyumluluğu (6698 Sayılı Kanun)

  • Veri Gizliliği: Kullanıcıların maç performans grafiklerini diğer üyelere gizleyebilme veya herkese açık yapabilme seçeneği.
  • KVKK Aydınlatma Metni: Kişisel verilerin işlenmesine ilişkin şeffaf bilgilendirme modalı.
  • Unutulma Hakkı: Kullanıcının dilediği an hesabını ve tüm kişisel verilerini tek tıkla kalıcı olarak silebilmesi.
  • Firestore Güvenlik Kuralları: Rol tabanlı erişim denetimi (RBAC), yetkisiz yazma/okuma koruması ve girdi doğrulama.

🛠️ Kullanılan Teknolojiler

  • Frontend: React 19, Vite 7
  • Yönlendirme (Routing): React Router 7
  • Grafik & Veri Görselleştirme: Recharts
  • İkon Seti: Lucide React
  • Backend & Veritabanı: Firebase (Authentication & Cloud Firestore)
  • Stil & Tasarım: Özel modern koyu tema (Dark Theme CSS) ve duyarlı (responsive) grid sistemi
  • Kod Kalitesi: ESLint 9

🚀 Kurulum ve Çalıştırma

Projeyi yerel ortamınızda çalıştırmak için aşağıdaki adımları takip edebilirsiniz:

Gereksinimler

  • Node.js (v18 veya üzeri önerilir)
  • npm veya yarn

1. Depoyu Klonlayın

git clone https://github.com/kullanici-adi/halisaha-projesi.git
cd halisaha-projesi

2. Bağımlılıkları Yükleyin

npm install

3. Çevre Değişkenlerini (Environment Variables) Ayarlayın

Kök dizinde .env dosyası oluşturun ve Firebase proje bilgilerinizi tanımlayın:

VITE_FIREBASE_API_KEY=your_api_key_here
VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project_id.firebasestorage.app
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_id
VITE_FIREBASE_MEASUREMENT_ID=your_measurement_id

4. Geliştirme Sunucusunu Başlatın

npm run dev

Tarayıcınızda http://localhost:3000 adresine giderek uygulamayı kullanmaya başlayabilirsiniz.

5. Derleme (Production Build) & Lint

# Kod kalite kontrolü
npm run lint

# Üretim derlemesi
npm run build

# Derlemeyi önizleme
npm run preview

📂 Proje Yapısı

├── public/                 # Statik dosyalar ve görseller
├── src/
│   ├── components/         # Tekrar kullanılabilir UI bileşenleri
│   │   ├── PlayerPerformanceChart.jsx  # Recharts destekli performans trend grafiği
│   │   ├── TacticalBoard.jsx           # Taktik tahtası ve saha dizilişi
│   │   ├── FeeCollectionTracker.jsx    # Kasa ve ücret takip modülü
│   │   ├── VenueLocationPicker.jsx     # Harita ve konum seçici
│   │   ├── KvkkModal.jsx               # KVKK aydınlatma metni modalı
│   │   └── ConfirmModal.jsx            # Güvenli onay/silme pencereleri
│   ├── contexts/           # React Context durum yönetimleri
│   │   ├── AuthContext.jsx # Kullanıcı oturum, profil ve yetkilendirme
│   │   └── DataContext.jsx # Gruplar, maçlar, istatistikler ve veri senkronizasyonu
│   ├── pages/              # Sayfa görünümleri
│   │   ├── dashboard/      # Grup detay, maç detay, yeni maç ve özet sayfaları
│   │   ├── Profile.jsx     # Kullanıcı profil ve kariyer istatistikleri
│   │   ├── Login.jsx       # Giriş sayfası
│   │   └── Register.jsx    # Kayıt sayfası
│   ├── firebase.js         # Firebase istemci yapılandırması
│   ├── utils.js            # Tarih formatlama, metin temizleme ve SEO yardımcıları
│   └── App.jsx             # Ana yönlendirici ve layout
├── firestore.rules         # Firebase güvenlik kuralları
├── package.json            # Proje bağımlılıkları ve scriptler
└── README.md               # Proje dokümantasyonu

📜 Lisans

Bu proje kişisel ve topluluk halı saha organizasyonları için geliştirilmiştir. Tüm hakları saklıdır.

About

HaliSaha

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages