Ana içeriğe geç

Events

Akademi Eğitim Platformu Events Dökümanı

Etkinlik Takvimi Tasarımı (Ayrı Modül Olarak)

1. Genel Mimari

  • Bağımsızlık: Akademi tenant'ları ile karıştırmamak için ayrı bir "Events" servisi/microservice olarak kur. Backend'de Node.js (real-time için ideal) veya Python (Flask/FastAPI) ile yönet. Verileri MariaDB'de ayrı bir schema'da tut (e.g., events_db), arama/indeksleme için OpenSearch'e entegre et.
  • Erişim Modelleri:
    • Global etkinlikler (tüm kullanıcılar görür).
    • Özel etkinlikler (kurumsal: sadece firma içi; freelancer: kendi takipçilerine açık).
    • Hibrit: Public RSVP + private invite.
  • UI Yerleşimi: Ana dashboard'da ayrı bir tab/seksiyon (e.g., "Etkinlikler" menüsü). Bootstrap ile basit bir calendar component (FullCalendar.js entegrasyonu öneririm — custom JS framework'üne kolay uyar).

2. Etkinlik Oluşturma & Yönetimi

  • Adım Adım Sihirbaz (akademi sihirbazına benzer, ama daha hafif):
    1. Temel Bilgiler: Etkinlik adı, açıklama, tarih/saat (UTC + timezone desteği, Istanbul default), konum (online/offline/hybrid — Zoom/Meet linki ekle).
    2. Tür Seçimi: Webinar, workshop, meetup, sertifikalı eğitim (ama akademi kursu değil, ayrı tut).
    3. AI Yardımı: Fine-tune modelinle otomatik öneri — "Bu etkinlik satış eğitimi mi? Önerilen süre: 2 saat, hedef kitle: 50 kişi" veya "Açıklama metnini üret" (JSON response ile).
      • RAG entegrasyonu: Kullanıcının workspace dosyalarından içerik çek (e.g., "Bu belgeyi baz alarak etkinlik outline'ı üret").
    4. Katılımcı Ayarları: Kapasite sınırı, ücretli/ücretsiz (Stripe entegrasyonu), RSVP formu (e-posta/magiclink ile kayıt).
    5. Yayınlama: "Yayınla" butonu → otomatik hatırlatma e-postaları + iCal/Outlook export.
  • AI Ekstra: Modelinle "etkinlik afişi metni" veya "sosyal medya paylaşım metni" üret (JSON output ile).

3. Takvim Görünümü & Kullanıcı Deneyimi

  • Görsel Takvim:
    • FullCalendar.js (open-source, Bootstrap uyumlu) ile aylık/haftalık/günlük view.
    • Filtreler: Tarih aralığı, tür, konum, benim etkinliklerim (katıldıklarım/oluşturduklarım).
    • Arama: OpenSearch ile hızlı arama (etkinlik adı, konuşmacı, etiket).
  • Mobil Uyumlu: Bootstrap zaten responsive, ama etkinlik detay sayfasına push notification (Node.js + FCM/WebPush) ekle.
  • Real-time Özellikler: Node.js ile Socket.io entegrasyonu — "Canlı etkinlik başladı" bildirimi, kalan kontenjan güncellemesi.

4. Etkinlik Detay Sayfası

  • Özelleştirilebilir Sayfa:
    • Hero: Afiş görseli (AI ile üret? e.g., "Bu etkinlik için afiş öner" — ama external API gibi Groq/Image gen kullanabilirsin).
    • Açıklama: Markdown editor ile zengin metin (video embed, agenda).
    • Konuşmacılar: Profil kartları (X entegrasyonu? @apexepa gibi handle'ları çekip bio göster — ama basit tut).
    • Kayıt Butonu: Passkey/magiclink ile hızlı login + RSVP.
    • Yorum/Altyazı: Post-etkinlik feedback formu.
  • SEO & Paylaşım: Meta tags, OpenGraph (sosyal medya için), share linki (QR code dahil).
  • Analitik: GA4 entegrasyonu — kayıt oranı, katılım, bounce. OpenSearch ile dahili rapor: En popüler etkinlikler, no-show oranı.

5. Entegrasyonlar & Güvenlik

  • Entegrasyonlar:
    • Video: Zoom/Meet API ile otomatik oda oluşturma + katılım track.
    • Ödeme: Stripe (freelancer'lar için ücretli etkinlik satışı).
    • Bildirim: E-posta (SendGrid), push (FCM), webhook (etkinlik tamamlandı → HR sistemine push).
    • Calendar Sync: iCal feed (Google Calendar/Outlook add).
    • AI: Tenant bazlı değil global olsun (ama kurumsal etkinliklerde şirket verisiyle RAG limitli).
  • Güvenlik:
    • Veri izolasyonu: Kurumsal etkinlikler sadece o organizasyonun üyeleri görsün (RBAC benzeri).
    • GDPR/KVKK: Kayıt verileri için consent + export/delete.
    • Audit log: Kim etkinlik oluşturdu/değiştirdi (MariaDB trigger ile).
    • Rate limiting: Kayıt spam'i önleme (Node.js middleware).

6. Yönetim & Raporlama

  • Admin Dashboard:
    • Etkinlik listesi (arama/sıralama), onay akışı (kurumsal için HR onayı).
    • Raporlar: Katılım istatistikleri, gelir (ücretli etkinlikler), feedback özeti.
    • AI Analiz: "Bu etkinliklerin katılımını analiz et, düşük olanlara öneri ver" (modelinle JSON output).
  • Versiyonlama: Basit tut, etkinlik düzenlemeleri için history log (MariaDB'de revisions tablosu).

7. Roadmap & Önceliklendirme

  • MVP (İlk 1-2 Ay):
    1. Etkinlik oluşturma sihirbazı + temel takvim view.
    2. Kayıt/RSVP + e-posta bildirimi.
    3. AI öneri (outline/metin üretimi).
    4. Analitik temel (kayıt sayısı).
  • Phase 2: Real-time + ödeme entegrasyonu (freelancer'lar için).
  • Phase 3: AI tutor benzeri "etkinlik asistanı" (soru-cevap chatbot) + video entegrasyonu.
  • Potansiyel Maliyet: FullCalendar ücretsiz, Stripe %2.9 ücret, Zoom API free tier yeterli.

Bu tasarım akademi ile entegre olmadan bağımsız çalışır, ama ileride "Akademi kursunu etkinlik olarak duyur" gibi bir bridge ekleyebiliriz (opsiyonel API hook ile).

Sorularım / Devam Önerisi

  • Etkinlik türlerini (webinar, meetup vs.) nasıl sınırlayalım, veya açık mı bırakalım?
  • Freelancer'lar için ödeme entegrasyonu öncelikli mi (Stripe hazır mı)?
  • AI tarafında, etkinlik için özel bir prompt zinciri mi istiyorsun (örnek vereyim)?
  • Teknik: FullCalendar.js'i custom JS framework'üne entegre etmek kolay mı, yoksa başka bir library mi tercih edersin (e.g., Day.js + custom grid)?