İçeriğe geç
Tüm projeler
Mobil UygulamalarAçık kaynak

Akıllı PDF Okuyucu & TDK Sözlük Asistanı

Ağır metinler okunurken odak kaybını önlemek için tasarlanmış; anında TDK sözlük çevirisi yapabilen, yerel bellek (Hive) destekli hibrit PDF ve metin okuma motoru.

Teknoloji yığını

Diller
Çatılar & kütüphaneler

Performans & metrikler

  • Ağır PDF text-extraction algoritmaları arka plan döngülerine itilerek ana iş parçacığında (UI Thread) oluşabilecek takılmalar (jank) engellendi
  • Hive veritabanı kutuları uygulama başlatılırken (startup) RAM'e yüklenerek disk I/O darboğazları ortadan kaldırıldı
  • TDK HTTP isteklerine katı timeout (5sn) sınırları koyularak, yavaş ağ bağlantılarında arayüzün donması (hang) önlendi

Neden geliştirdim?

Edebi veya akademik PDF'leri akıllı cihazlarda okurken bilinmeyen bir kelime için sürekli farklı bir sözlük uygulamasına geçmek okuma akışını ve odağı tamamen yok ediyordu. Bu sürtünmeyi ortadan kaldırmak için, PDF okuma deneyimi ile Türkiye'nin en güvenilir sözlük kaynağını (TDK) aynı UI katmanında birleştiren kendi izole okuma asistanımı geliştirdim.

Mimari & kararlar

Uygulamanın çekirdeği Flutter üzerinde çalışıyor. Yerel veri kalıcılığı (favoriler, arama geçmişi ve sayfa takibi) için asenkron SQLite yerine, doğrudan belleğe haritalanan (memory-mapped) ultra hızlı NoSQL çözümü Hive kullanıldı. PDF rendering ve metin ayıklama (extraction) işlemleri Syncfusion motoruna devredildi. TDK ağ katmanında (Network Layer), basit bot korumalarını aşabilmek adına tarayıcı taklidi yapan (User-Agent spoofing) ve gelen metni Regex ile noktalama işaretlerinden arındıran agresif bir sanitization rutini kurguladım.

Temel özellikler

  1. 01Cihaz içi (Local) ve Online URL tabanlı PDF yükleme yeteneği
  2. 02PDF üzerinden metin seçildiği an TDK'dan veriyi çeken, UI'ı bölmeyen Draggable Bottom Sheet entegrasyonu
  3. 03Hive NoSQL mimarisiyle çalışan sıfır gecikmeli (zero-latency) arama geçmişi ve favori kelime yönetimi
  4. 04Otonom sayfa takibi: Kitap kapatıldığında kalınan sayfayı otomatik kaydetme ve geri yükleme
  5. 05Android 13+ (SDK 33) için dinamik manageExternalStorage dosya erişim yönetimi

Teknik değerlendirme

Mobil platformlarda PDF işlemek ve bellek yönetimi (memory management) sağlamak her zaman risklidir. Syncfusion instance'larını doğru yaşam döngüsüyle (dispose) yöneterek olası bellek sızıntılarını (memory leak) kapattım. Projenin asıl mühendislik değeri ise TDK entegrasyonunda yatıyor; kullanıcı PDF üzerinden kelimeyi virgül veya noktayla yanlışlıkla seçse bile, araya giren Regex tabanlı sanitization motoru string'i temizleyip API'nin tam istediği hale getiriyor ve kusursuz bir kullanıcı deneyimi (UX) sunuyor.