*Siber Vatan Programı Yıldız CTI Ekibi görevi kapsamında geliştirilmiştir.*
🚀 Özellikler • 🛠️ Teknolojiler • 📦 Kurulum • 📖 API • 📸 Galeri
galileoff-InteractiveScraper sıradan veri kazıma araçlarının ötesine geçen, kullanıcı deneyimini merkeze alan bir uygulamadır. Go (Golang)'ın gücünü Next.js'in modern arayüzüyle birleştirerek hem geliştiriciler hem de son kullanıcılar için güçlü bir web scraping, analiz ve izleme çözümü sunar.
|
Akıllı Scraping
Dinamik ve statik siteleri ayırt etmeksizin veriyi en saf haliyle çeker. JavaScript render desteği ile modern web'e tam uyumlu. |
Watchlist & İzleme
Hedef siteleri 7/24 izler. Değişiklik olduğunda yakalar, kaydeder ve size raporlar. Hiçbir güncellemeyi kaçırmayın. |
İnteraktif Dashboard
Next.js ve Tailwind ile hazırlanmış şık arayüz. Verilerinizi ham liste yerine, anlamlı grafikler ve istatistiklerle görün. |
|
Kurumsal Güvenlik
JWT (JSON Web Token) tabanlı oturum yönetimi ve güvenli API endpointleri ile verileriniz her zaman güvende. |
Tam Özelleştirme
Kendi User-Agent havuzunuzu yönetin, etiketlenecek kelimeleri filtreleyin ve tarama davranışlarını ince ayarla kontrol edin. |
Yüksek Performans
Go backend ile milisaniyeler içinde cevap veren API'lar ve Docker ile tek komutla ayağa kalkan mimari. |
Bu proje, sınıfının en iyisi teknolojilerle inşa edilmiştir.
A[InteractiveScraper] --> B[📂 backend];
A --> C[📂 frontend];
A --> D[📄 docker-compose.yml];
B --> B1[📂 controllers];
B --> B2[📂 models];
B --> B3[📂 scraper];
B --> B4[📄 main.go];
C --> C1[📂 src];
C --> C2[📄 package.json];
C --> C3[📄 tailwind.config.js];
Tüm sistemi tek satır kod ile ayağa kaldırın. En temiz ve önerilen yöntemdir.
# 1. Projeyi klonlayın (Eğer yapmadıysanız)
git clone https://github.com/galile0ff/galileoff-InteractiveScraper.git
# 2. Proje dosyasının ana dizinine gidin
cd ./galileoff-InteractiveScraper/
# 3. Servisleri başlatın
docker-compose up --build| Servis | URL |
|---|---|
| Frontend UI | http://localhost:3000 |
| Backend API | http://localhost:8080 |
Important
Varsayılan Admin Girişi
👤 Kullanıcı: admin
🔑 Şifre: galileoff
Docker kullanmak istemiyorsanız, modülleri ayrı ayrı çalıştırabilirsiniz.
Backend Kurulumu (Go)
cd backend
go mod download
go run .
# Sunucu 8080 portunda çalışırFrontend Kurulumu (Node.js)
cd frontend
npm install
npm run dev
# Arayüz 3000 portunda çalışırSistem ayarlarını .env dosyası veya ortam değişkenleri ile yönetebilirsiniz.
| Değişken | Varsayılan | Açıklama |
|---|---|---|
PORT |
8080 |
API sunucusu portu |
DB_PATH |
data/scraper.db |
Veritabanı dosya yolu |
JWT_SECRET |
(.env içinde) | Güvenlik anahtarı (Fesleğen!) |
API_URL |
http://localhost:8080 |
Frontend'in API adresi |
API'miz REST standartlarına uygundur ve tamamen belgelenmiştir. Tüm güvenli isteklerde Authorization: Bearer <token> başlığı kullanılmalıdır.
POST /api/login- Oturum açma ve Token alma.
POST /api/scan- Yeni tarama görevi başlat.- Parametreler:
url,keywords,deep_scan
- Parametreler:
GET /api/history- Geçmiş taramaları listele.
GET /api/stats/general- Dashboard istatistikleri.POST /api/settings/watchlist- Siteyi takibe al.POST /api/settings/keywords- Etiketlenen/Aranan kelime ekle.
Sistem, yapılan her işlemi kayıt altına alır.
GET /api/logs- Tüm sistem loglarını getirir.GET /api/logs/stats- Log seviyelerine göre (INFO, ERROR, WARN) dağılımı verir.- Log Tipleri:
INFO: Normal işlemler (Tarama başladı/bitti).WARN: Potansiyel sorunlar (Siteye erişim gecikmesi).ERROR: Kritik hatalar (Veritabanı bağlantı hatası).
| Dashboard & Analiz | Geçmiş Taramalar |
|---|---|
![]() |
![]() |
| Sistem Özeti | Veri Listesi |
| Ayarlar & Konfigürasyon | Log Kayıtları |
|---|---|
![]() |
![]() |
| User-Agent Yönetimi | Log Seviyeleri |
Frontend ve Backend'in aynı ağda olduğundan emin olun. Docker kullanıyorsanız bu otomatiktir. Manuel kurulumda
NEXT_PUBLIC_API_URL'inhttp://localhost:8080olduğundan emin olun.
backend/data/scraper.dbdosyasını silip sunucuyu yeniden başlatmanız yeterlidir. Sistem otomatik olarak yeni bir veritabanı oluşturacaktır.
Bu proje açık kaynaklıdır ve topluluk desteğiyle geliştirilebilir. Eğer işinize yaradıysa:
- Fork'layın
- Branch oluşturun (
git checkout -b feature/yeniozellik) - Commit'leyin (
git commit -m 'Yeni özellik: X eklendi') - Push'layın (
git push origin feature/yeniozellik) - Pull Request açın
Bu proje MIT Lisansı ile lisanslanmıştır. Detaylar için LICENSE dosyasına bakınız.



