Tender Tracker: Yerel Kamu İhale Takip ve Sınıflandırma Aracı
Dört kamu ihale kaynağından veri toplayan, kural tabanlı ve yerel çalışan açık kaynaklı masaüstü takip aracı.
Tender Tracker, Türkiye’deki kamu ihale portallarından verileri yerel olarak toplayan, mükerrer kayıtları ayıklayan, belirlenen anahtar kelime kurallarıyla sınıflandıran ve sonuçları masaüstü panel, e-posta veya Telegram üzerinden ileten açık kaynaklı bir masaüstü uygulamasıdır. Merkezi bir sunucuya veya bulut aboneliğine ihtiyaç duymadan, tüm veriyi kullanıcının kendi bilgisayarında tutarak teknik satış ve teklif hazırlama süreçlerindeki elle arama yükünü ortadan kaldırır.
Proje Künyesi
| Alan | Değer |
|---|---|
| Rol | Tasarım, mimari, geliştirme |
| Durum | Açık kaynak (Public PoC) |
| Kapsam | Kamu ihale verisi toplama, filtreleme ve bildirim |
| Teknolojiler | Python 3.12, FastAPI, SQLite, SQLAlchemy, PyInstaller |
| Lisans | MIT |
| Dağıtım | GitHub Release (Taşınabilir Windows EXE) + Kaynak Kod |
Çıkış Noktası ve İhtiyaç
Teknik satış, iş geliştirme ve pazar takibi yapan ekipler için kamu ihalelerini izlemek genellikle zahmetli bir süreçtir. İlgili uzman her sabah EKAP, ilan.gov.tr, DMO ve sektörel bültenleri tek tek açar; arama yapar, ilgisiz kayıtları ayıklar ve bulduğu ilanları çalışma tablosuna işler. Bu yöntem hem zaman kaybettirir hem de gözden kaçan fırsatlara yol açar.
Tender Tracker bu tekrarlı süreci basitleştirmek ve yerel ortamda otomatikleştirmek için geliştirildi:
- Farklı ihale kaynaklarını tek merkezden taramak,
- Temizlik, gıda veya inşaat gibi ilgisiz genel ilanları otomatik elemek,
- Kalan teknik ilanları sektörel anahtar kelimelere göre gruplamak,
- Yeni fırsatları yerel arayüzden, e-postayla veya Telegram mesajıyla bildirmek,
- Tüm veri tabanını ve ayarları kullanıcının kendi makinesinde tutmak.
Çözüm Mimarisi ve İşleyiş
Uygulama, dış servislere bağımlı olmadan deterministik bir işlem hattı üzerinden çalışır. Temel tasarım tercihi olarak kural tabanlı filtreler her zaman ilk sırada çalışır; böylece sistem hızlı, şeffaf ve API maliyetsiz biçimde kararları üretir.
İşlem Hattının Aşamaları
- Veri Toplama: Kaynak adaptörleri kamuya açık portallardan ilanları çeker ve ortak bir veri modeline dönüştürür.
- Ayıklama: Aynı ilanın farklı günlerde veya kaynaklarda tekrar çıkması durumunda mükerrer kayıtlar elenir.
- Genel Dışlama: Kullanıcının belirlediği negatif anahtar kelimeler taranarak ilgisiz alanlar doğrudan dışarıda bırakılır.
- Sınıflandırma: Kalan ilanlar, sektöre özel tanımlanmış pozitif kelimeler üzerinden hedeflenen kategorilere atanır. İsteğe bağlı olarak semantik değerlendirme için ek dil modeli filtreleri devreye alınabilir.
- Kayıt ve Bildirim: Eşleşen kayıtlar yerel SQLite veri tabanına işlenir; panelde listelenir ve yapılandırılmış bildirim kanallarına gönderilir.
Temel Özellikler
Desteklenen Veri Kaynakları
Uygulama kamuya açık dört temel kaynaktan veri toplar:
- EKAPv2: Kamuya açık ihale kayıtları üzerinden ilk tarama ve artımlı senkronizasyon.
- DMO: Aktif katalog ve alım ilanlarının taranması.
- ilan.gov.tr: Doğrudan JSON arayüzü üzerinden sayfalı sorgulama.
- Yatırımlar Dergisi: Sektörel yatırım ve ihale bültenlerinin içerik ayrıştırması.
Not: Sistem yalnızca kamuya açık verileri işler; kurumsal şifre, e-imza veya özel oturum gerektiren kapalı alanlara müdahale etmez.
Yerel Kullanıcı Paneli ve Komut Satırı
Uygulama iki farklı kullanım modu sunar:
- Web Arayüzü: FastAPI tabanlı hafif bir yerel arayüz sunar. İhale listeleri, kaynak ayarları, filtre yönetimi ve arama geçmişi bu panelden izlenir.
- Komut Satırı (CLI):
--onceparametresiyle tek seferlik tarama yapıp kapanabilir veya--daemonile arka planda sürekli çalışabilir. Bu sayede Windows Görev Zamanlayıcı (Task Scheduler) ile günlük mesai başlangıcında otomatik çalışacak biçimde ayarlanabilir.
Bağımsız ve Taşınabilir Dağıtım
Tender Tracker merkezi bir SaaS ürünü değildir. Sunucu kirası veya kullanıcı hesabı gerektirmez:
- PyInstaller ile derlenmiş tek bir taşınabilir (portable) Windows çalıştırılabilir dosyası (
.exe) olarak dağıtılır. - SQLite veri tabanı dosya tabanlıdır; yedeklemek için klasörü kopyalamak yeterlidir.
- Telegram ve SMTP bildirimleri doğrudan istemci bilgisayarından ilgili uç noktalara bağlanır.
Mevcut Durum ve Açık Kaynak
Tender Tracker açık kaynaklı olarak geliştirilmekte ve MIT lisansı altında dağıtılmaktadır. Kod tabanı, güncel sürümler ve kurulum adımları GitHub üzerinden erişilebilir durumdadır.
📋 İlgili Bağlantılar
📂 Kaynak Kod Deposu: github.com/muisik/tender-tracker
🔗 İlgili Proje: ContextRail: Minimum Etkili Proje Hafızası
🛠️ Yazılım Mimarisi: Agentic Coding ve Sistemik Karar Sınırları
Son güncelleme: Temmuz 2026 | Versiyon: 1.0