Skip to content

Bu proje, çeşitli Türk teknoloji ve kariyer platformlarından güncel etkinlikleri (bootcamp'ler, hackathon'lar, yetenek programları vb.) çekmek, depolamak ve kullanıcı dostu bir web arayüzünde sunmak için geliştirilmiştir. Python, Selenium, BeautifulSoup ve Flask teknolojilerini kullanır.

License

Notifications You must be signed in to change notification settings

Metrohan/eventradar.dev

Repository files navigation

TechEventRadar Banner

🚀 TechEventRadar

TechEventRadar, Türkiye'deki çeşitli teknoloji ve kariyer platformlarını tarayarak en güncel etkinlikleri, bootcamp'leri ve hackathon'ları tek bir noktada toplayan modern ve açık kaynaklı bir platformdur. En temel amacı yazılım/bilgisayar mühendisliği veya ilgili bölümlere yeni başlayan öğrencilere bilgi vermek ve onları ilerideki sektörlerde başarılı olmalarına yardımcı olmasını sağlamaktır.

Bu sürüm, FastAPI backend ve React (Vite) frontend mimarisi ile tamamen yenilenmiştir.

✨ Öne Çıkan Özellikler

  • 🌓 Koyu/Açık Tema Desteği: Kullanıcılar tercihlerine göre karanlık veya aydınlık mod arasında kolayca geçiş yapabilir.
  • 📚 Ücretsiz Eğitimler: Sektörün devlerinden (Google, AWS, Microsoft, IBM) küratörlüğünü yaptığımız ücretsiz eğitim kaynakları.
  • 📣 Kullanıcı Katılımı: Sayfa üzerinden yeni etkinlik talepleri gönderebilir, öneri ve şikayetlerinizi iletebilirsiniz.
  • 🛠️ Admin Kontrol Paneli: Gelişmiş admin paneli ile scraper'ları tetikleyebilir, logları izleyebilir ve bildirimleri yönetebilirsiniz.
  • 🛡️ Gelişmiş Scraper'lar: undetected-chromedriver entegrasyonu ile Cloudflare korumalı sitelerden bile sorunsuz veri çekimi.
  • 🤖 Otomatik Tarih Ayrıştırma: Dağınık tarih formatlarını (D/M/YYYY, Türkçe aylar vb.) otomatik olarak standart veritabanı formatına dönüştürür.

🛠️ Teknolojiler

Backend

  • FastAPI: Yüksek performanslı, modern Python web çatısı.
  • PostgreSQL: İlişkisel veritabanı.
  • SQLAlchemy: ORM katmanı.
  • Alembic: Veritabanı migrasyon yönetimi.
  • dateparser: Esnek tarih ayrıştırma.

Scrapers

  • Selenium / undetected-chromedriver: Dinamik içerikleri çekmek için.
  • BeautifulSoup4: HTML analizi.

Frontend

  • React (Vite): Hızlı ve modern web arayüzü.
  • ThemeContext: Tema yönetimi ve yerel depolama entegrasyonu.
  • Bootstrap 5 / Vanilla CSS: Modern ve duyarlı tasarım.

🚀 Kurulum ve Çalıştırma

Docker ile Hızlı Kurululm

  1. Repoyu Klonlayın:

    git clone https://github.com/Metrohan/eventradar.dev.git
    cd eventradar.dev
  2. Docker Ortamını Başlatın:

    docker-compose up --build -d
  3. Başlangıç Scraper'ını Çalıştırın:

    docker exec techeventradar_backend python scripts/run_daily_scrape.py

Yerel Geliştirme (Opsiyonel)

  • Backend: requirements.txt dosyasındaki bağımlılıkları yükleyin ve uvicorn app.main:app --reload ile başlatın.
  • Frontend: frontend klasörüne girin, npm install ve npm run dev komutlarını çalıştırın.

📂 Proje Yapısı

eventradar.dev/
├── app/                # FastAPI Backend Uygulaması
│   ├── api/            # API Endpointleri
│   ├── core/           # Konfigürasyon ve DB Ayarları
│   ├── models/         # DB Modelleri
│   ├── services/       # İş Mantığı
│   └── scrapers/       # Site bazlı kazıyıcılar
├── frontend/           # React (Vite) Frontend
│   └── src/            # Bileşenler, Sayfalar, Contextler
├── scripts/            # Bakım ve scraping scriptleri
├── docker-compose.yml  # Docker orkestrasyonu
└── requirements.txt    # Python bağımlılıkları

🤝 Katkıda Bulunma

Projeye katkıda bulunmak isterseniz bir Pull Request açabilir veya karşılaştığınız hataları Issue olarak bildirebilirsiniz.

📜 Lisans

Bu proje MIT Lisansı altında lisanslanmıştır.

About

Bu proje, çeşitli Türk teknoloji ve kariyer platformlarından güncel etkinlikleri (bootcamp'ler, hackathon'lar, yetenek programları vb.) çekmek, depolamak ve kullanıcı dostu bir web arayüzünde sunmak için geliştirilmiştir. Python, Selenium, BeautifulSoup ve Flask teknolojilerini kullanır.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published