(Türkçe açıklama aşağıdadır / Scroll down for English)
DocuForge, PDF belgelerini modern ve yapay zeka dostu Markdown formatına dönüştüren, yüksek performanslı bir araçtır. Özellikle Türkçe ve İngilizce için geliştirdiğimiz "Akıllı Dil Uzmanı" (Healer Engine) sayesinde, PDF'lerdeki bozuk metinleri (örn: "v e" -> "ve", "t he" -> "the") otomatik olarak onarır.
Kendi Kendini İyileştiren Motor (Auto-OCR): Eğer bir sayfada G ü ç gibi bozuk font kodlaması tespit edilirse, sistem o sayfayı otomatik olarak OCR (Görsel Okuma) moduna alır ve sorunu %100 düzeltir.
- Yapay Zeka (AI) İçin: ChatGPT veya Claude gibi modellere PDF yerine Markdown verirseniz, dokümanı %100 doğrulukla anlarlar.
- GitHub İçin: Değişiklikleri satır satır takip edebilirsiniz.
- Temiz Okuma: Gereksiz boşluklardan, headers ve footers gibi tekrarlayan metinlerden arınmış, saf bilgi içerir.
- 🔒 %100 Gizlilik: Tüm işlemler bilgisayarınızda (Local) gerçekleşir. Belgeleriniz asla internete yüklenmez.
Cloud tabanlı LLM servisleri (ChatGPT, Claude vb.) PDF işlemede şu sorunları yaşar:
- Gizlilik: Belgeleriniz üçüncü taraf sunuculara yüklenir
- Maliyet: Sayfa/token başına ücretlendirme
- Limitler: Yüksek sayfalı dosyalarda context window sorunu
- Hız: API rate limitleri ve kuyruk bekleme süreleri
DocuForge bu sorunları çözer:
- ✅ %100 Yerel İşlem - Verileriniz asla bilgisayarınızdan çıkmaz
- ✅ Sınırsız & Ücretsiz - Binlerce sayfa, sıfır maliyet
- ✅ Paralel İşlem - Çoklu PDF'leri aynı anda dönüştürün
- ✅ Akıllı OCR - Bozuk fontları otomatik algılar ve düzeltir
- ✅ Türkçe Optimizasyonu - Healer motoru Türkçe karakterleri (ş, ğ, ı, ü, ö, ç) akıllıca onarır
Bu araç güçlü motorlar (OCR, Tablo okuyucu) kullanır. Lütfen sırasıyla uygulayın:
Önce komut satırında (Terminal/PowerShell) projenin kurulacağı klasöre gidin (örn: Masaüstü).
# 1. Projeyi İndirin
git clone https://github.com/glonorce/pdf-to-markdown.git
cd pdf-to-markdown
# 2. Sanal Ortamı (Virtual Environment) Kurun
python -m venv .venv
# 3. Gerekli Kütüphaneleri Yükleyin
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txtWindows için Scoop kullanarak gerekli motorları tek komutla kurun:
# Scoop yüklü değilse:
iwr -useb get.scoop.sh | iex
# Gerekli araçlar:
scoop bucket add extras
scoop install poppler tesseract ghostscript
# Tesseract dil dosyaları (Best modeller - daha yüksek doğruluk):
Invoke-WebRequest -Uri "https://github.com/tesseract-ocr/tessdata_best/raw/main/eng.traineddata" -OutFile "$env:USERPROFILE\scoop\persist\tesseract\tessdata\eng.traineddata"
Invoke-WebRequest -Uri "https://github.com/tesseract-ocr/tessdata_best/raw/main/tur.traineddata" -OutFile "$env:USERPROFILE\scoop\persist\tesseract\tessdata\tur.traineddata"Not: Windows için optimize edilmiştir. Mac veya Linux kullanıcıları benzer araçları (Poppler, Tesseract) manuel kurarak (
brew installveyaapt-get install) kullanabilir.
Kurulum bittikten sonra aracı her çalıştırmak istediğinizde şu iki adımı uygulayın. Sihirbaz sizi yönlendirecektir:
# 1. Ortamı Hazırla (Her seferinde yapın)
.\.venv\Scripts\Activate.ps1
# 2. Seçenek: Klasik Terminal
python -m docuforge.main convert
# 3. Seçenek: Web Arayüzü 🌐
python -m docuforge.main webSihirbaz başladığında sizden PDF Klasörü, Çıktı Yeri ve Gelişmiş Seçenekler için onay isteyecektir.
- MD Görüntüleme: İşlem biten dosyalarda 👁 butonuna tıklayarak Markdown'ı tarayıcıda görüntüleyin
- MD Görüntüleyici/Düzenleyici: Herhangi bir MD dosyasını seçip 3 farklı modda (Klasik/Varsayılan/Ham) görüntüleyin, düzenleyin ve indirin
- HTML İndirme: Görüntüleme sayfasında "HTML İndir" butonu ile stillenmiş HTML olarak kaydedin
İpucu: Tüm mevcut komutları görmek için:
python -m docuforge.main --help
- Parallel Workers: İşlemci çekirdeklerinize göre otomatik önerilir. (Manuel komutta varsayılan: 4).
⚠️ Not: Worker sayısı arttıkça bellek (RAM) kullanımı artar. Örn: 4 worker ≈ 2GB, 2 worker ≈ 1GB. - Gelişmiş Seçenekler (Varsayılan: KAPALI):
- OCR: Sadece taranmış/resim şeklindeki sayfalar için açın (Otomatik devreye girer).
- Tables: Tabloları analiz eder.
- Images: Resimleri ayıklar (Açıksa klasör oluşturur, kapalıysa oluşturmaz).
- Charts (Beta): Grafikleri ayıklar.
⚠️ Sadece vektör grafikler için çalışır. Deneyseldir, düzensiz sonuç verebilir. - Recursive Mode (CLI): Alt klasörleri de tarar ve aynı klasör yapısını çıktıda oluşturur.
- Header Sensitivity (0.6): Sayfa numarası/kitap adı gibi tekrarlayan metinleri silme hassasiyetidir. (0.6 = %60 tekrar ediyorsa sil).
- Removable Tags: PDF'den silinmesini istediğiniz metinleri (filigran, watermark vb.) kalıcı listeye ekleyin. CLI veya Web arayüzünden yönetilebilir.
Bu proje, sadece kod yazmak değil, modern Sistem Mühendisliği ve Yapay Zeka Yönetimi (AI Orchestration) becerilerinin bir ürünüdür.
- Mimari & Mantık (GÖKSEL ÖZKAN): Projenin "Healer" (Dil düzeltme) algoritması, parçalama (chunking) stratejisi ve hata yönetimi mimarisi insan zekasıyla tasarlanmıştır.
- Kodlama (AI): Tasarlanan bu karmaşık mimari, AI araçları yönlendirilerek kodlanmıştır.
GÖKSEL ÖZKAN
- System Architecture Design & AI Orchestration
- Project Lead
- Karmaşık Tablolar: 10+ sütunlu, birleştirilmiş hücreli veya renk kodlu (heat-map) tablolar tam doğrulukla çıkarılamayabilir.
- Font Encoding Sorunları: Bazı PDF'lerde Türkçe karakterler (ş, ğ, ı, ü, ö, ç) yanlış kodlanmış olabilir. Healer çoğu hatayı düzeltir. (Yeni Auto-OCR özelliği bu sorunu büyük ölçüde çözmektedir).
- Öneri: Kritik dokümanlar için çıktıyı manuel kontrol edin.
DocuForge is a high-performance tool designed to convert PDFs into clean, structured Markdown. It features a specialized "Healer Engine" that intelligently reinforces broken text (e.g., "t he" -> "the") based on the language context (TR/EN).
Self-Healing Engine (Auto-OCR): If the system detects broken font encoding (e.g. P o w e r), it automatically switches to OCR mode for that specific page, ensuring 100% accurate extraction.
- For AI & LLMs: Sending Markdown to models like GPT-4 ensures 100% context accuracy compared to raw PDFs.
- For Version Control: Track document changes line-by-line on GitHub.
- For Clarity: Strips away layout artifacts, repetitive headers, and footers.
- 🔒 100% Privacy: All processing happens locally. No files are uploaded to the cloud.
Cloud-based LLM services (ChatGPT, Claude, etc.) face these issues when processing PDFs:
- Privacy: Your documents are uploaded to third-party servers
- Cost: Per-page or per-token pricing
- Limits: Context window issues with large documents
- Speed: API rate limits and queue delays
DocuForge solves these problems:
- ✅ 100% Local Processing - Your data never leaves your machine
- ✅ Unlimited & Free - Thousands of pages, zero cost
- ✅ Parallel Processing - Convert multiple PDFs simultaneously
- ✅ Smart OCR - Auto-detects and fixes broken fonts
- ✅ Language Optimized - Healer engine repairs Turkish characters (ş, ğ, ı, ü, ö, ç)
Navigate to your desired folder first.
# 1. Clone Repository
git clone https://github.com/glonorce/pdf-to-markdown.git
cd pdf-to-markdown
# 2. Create Virtual Environment
python -m venv .venv
# 3. Install Dimensions
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txtUse Scoop to install core dependencies easily:
# Install Scoop (if needed):
iwr -useb get.scoop.sh | iex
# Install Dependencies:
scoop bucket add extras
scoop install poppler tesseract ghostscript
# Tesseract language files (Best models - higher accuracy):
Invoke-WebRequest -Uri "https://github.com/tesseract-ocr/tessdata_best/raw/main/eng.traineddata" -OutFile "$env:USERPROFILE\scoop\persist\tesseract\tessdata\eng.traineddata"
Invoke-WebRequest -Uri "https://github.com/tesseract-ocr/tessdata_best/raw/main/tur.traineddata" -OutFile "$env:USERPROFILE\scoop\persist\tesseract\tessdata\tur.traineddata"Note: Optimized for Windows. Mac or Linux users can run the tool by manually installing dependencies (Poppler, Tesseract) using
breworapt-get.
Whenever you want to run the tool, follow this simple workflow. The interactive wizard will handle the rest.
# 1. Activate Environment
.\.venv\Scripts\Activate.ps1
# Option 2: Classic Terminal
python -m docuforge.main convert
# Option 3: Web Interface 🌐
python -m docuforge.main webThe wizard will ask for your Input Directory, Output Path, and Advanced Options.
- MD Viewer: Click the 👁 button on completed files to preview Markdown in browser
- MD Viewer/Editor: Select any MD file and view in 3 modes (Classic/Default/Raw), edit and download
- HTML Download: Save as styled HTML using the "HTML Download" button in the preview
Tip: To see all available commands:
python -m docuforge.main --help
- Parallel Workers: Automatically optimized based on your CPU cores. (CLI default: 4).
⚠️ Note: Higher worker count increases RAM usage. E.g., 4 workers ≈ 2GB, 2 workers ≈ 1GB. - Advanced Options (Default: OFF):
- OCR: Enables text recognition for scanned pages.
- Tables: Extracts data tables.
- Images: Extracts embedded images (Creates folder only if found).
- Charts (Beta): Extracts charts/graphs.
⚠️ Only works for vector graphics. Experimental, may produce irregular results. - Recursive Mode (CLI): Scans subdirectories and preserves the folder structure in output.
- Header Sensitivity (0.6): Controls removal of repeated text (headers/footers). 0.6 means "remove if present on 60% of pages".
- Removable Tags: Add text patterns (watermarks, etc.) to a persistent blocklist. Manage via CLI or Web UI.
This project demonstrates the power of Prompt Engineering and System Architecture. It is not just "AI-generated code" but a human-architected system.
- Architecture & Logic: The "Healer" algorithms, chunking strategies, and robust error handling were designed by the human engineer.
- Implementation: The code execution was handled by AI under strict architectural guidance.
- Complex Tables: Tables with 10+ columns, merged cells, or color-coded (heat-map) styling may not extract with 100% accuracy.
- Font Encoding Issues: Some PDFs have improperly encoded Turkish characters (ş, ğ, ı, ü, ö, ç). The Healer corrects most errors. (This is now largely solved by the new Auto-OCR feature).
- Recommendation: Manually review the printout for critical documents.
GÖKSEL ÖZKAN
- System Architecture Design & AI Orchestration
- Project Lead