Skip to content

tolgab35/eventstore-mobile

Repository files navigation

EventStore

EventStore, üniversite kulüpleri için etkinlik ve bilet yönetim sistemi sağlayan modern bir Android uygulamasıdır.

EventStore Screenshot

📱 Özellikler

Kullanıcı Özellikleri

  • Etkinlik Keşfi: Tüm kulüplerin etkinliklerini görüntüleme ve arama
  • Bilet Satın Alma: Etkinlikler için bilet satın alma ve ödeme
  • Ürün Satın Alma: Etkinliklerde satılan ürünleri satın alma
  • Duyurular: Kulüplerin paylaştığı genel duyuruları ve önemli bilgilendirmeleri görüntüleme
  • Biletlerim: Satın alınan biletleri görüntüleme ve QR kod ile erişim
  • Profil Yönetimi: Kullanıcı profil bilgilerini görüntüleme ve düzenleme
  • QR Kod Okuma: Kamera ile QR kod okuma özelliği

Kulüp Yöneticisi Özellikleri

  • Etkinlik Oluşturma: Yeni etkinlikler oluşturma ve yönetme
  • Kulüp Yönetimi: Kulüp bilgilerini düzenleme
  • Bilet ve Ürün Yönetimi: Etkinlikler için bilet ve ürün tanımlama
  • Sipariş Takibi: Etkinlik siparişlerini görüntüleme

Sistem Yöneticisi Özellikleri

  • Kulüp Yönetimi: Tüm kulüpleri görüntüleme ve yönetme
  • Kullanıcı Yönetimi: Sistem kullanıcılarını yönetme

🛠️ Teknolojiler

Frontend

  • Kotlin: Programlama dili
  • Jetpack Compose: Modern UI framework
  • Material Design 3: UI tasarım sistemi
  • Navigation Compose: Ekranlar arası geçiş yönetimi
  • ViewModel & LiveData: State management
  • Koin: Dependency Injection

Backend & Veritabanı

  • Supabase: Backend as a Service
    • PostgreSQL veritabanı
    • Authentication (GoTrue)
    • Storage (görsel yükleme)
    • Realtime subscriptions

Diğer Kütüphaneler

  • ZXing: QR kod oluşturma
  • ML Kit: QR kod okuma
  • CameraX: Kamera entegrasyonu
  • Coil: Görsel yükleme ve önbellekleme
  • Ktor: HTTP client
  • Kotlin Coroutines: Asenkron işlemler
  • Kotlin Serialization: JSON serileştirme

📋 Gereksinimler

  • Android Studio: Hedgehog | 2023.1.1 veya üzeri
  • JDK: 11 veya üzeri
  • Min SDK: 24 (Android 7.0)
  • Target SDK: 36
  • Gradle: 8.0+

🚀 Kurulum

  1. Projeyi klonlayın:
git clone https://github.com/yourusername/event-store.git
cd event-store
  1. Android Studio'da projeyi açın

  2. Supabase yapılandırması:

    • app/src/main/java/com/example/eventstore/data/remote/api/SupabaseModule.kt dosyasında Supabase URL ve API key'lerinizi güncelleyin
  3. Projeyi derleyin ve çalıştırın

📁 Proje Yapısı

app/src/main/java/com/example/eventstore/
├── data/                    # Data layer
│   ├── remote/             # Backend entegrasyonu
│   │   ├── api/            # Supabase modülü
│   │   └── dto/            # Data Transfer Objects
│   └── repository/         # Repository implementasyonları
├── domain/                 # Domain layer
│   ├── model/              # Domain modelleri
│   ├── repository/         # Repository interface'leri
│   └── usecase/            # Use case'ler
├── di/                     # Dependency Injection
│   └── AppModule.kt        # Koin modülü
├── ui/                     # UI layer
│   ├── component/          # Reusable UI bileşenleri
│   ├── navigation/         # Navigation yapılandırması
│   ├── screen/             # Ekranlar
│   ├── theme/              # Tema ve stil tanımları
│   └── viewmodel/          # ViewModel'ler
└── utils/                  # Yardımcı sınıflar
    ├── DateUtils.kt
    ├── ImageUploader.kt
    ├── QRCodeGenerator.kt
    └── QRCodeScanner.kt

🏗️ Mimari

Uygulama Clean Architecture prensiplerine uygun olarak geliştirilmiştir:

  • Data Layer: Backend entegrasyonu ve veri kaynakları
  • Domain Layer: İş mantığı ve domain modelleri
  • UI Layer: Jetpack Compose ile kullanıcı arayüzü

MVVM (Model-View-ViewModel) pattern'i kullanılmaktadır.

👥 Geliştirenler

📄 Lisans

Bu proje özel bir projedir.

🤝 Katkıda Bulunma

Katkılarınızı bekliyoruz! Lütfen önce bir issue açarak ne üzerinde çalışmak istediğinizi belirtin.


Not: Bu uygulama eğitim amaçlı geliştirilmiştir.

About

Campus-focused Android app for club events, ticketing, and QR-based entry management.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages