SvelteKit tabanlı doküman inceleme aracı. Uygulama JPG/PNG doküman görselleri üzerinde OCR çalıştırır, kelime güven skorlarını ve işaretlenmiş bölgeleri görsel katman olarak gösterir, ardından kullanıcıya manuel bir forged/genuine kararı vermek için odaklı bir çalışma alanı sunar.
- Doküman görsellerini pan/zoom destekli bir canvas üzerinde gösterir.
- Tesseract.js ile OCR çıktısı üretir ve kelime bounding box verilerini saklar.
- OCR confidence değerine göre kelimeleri safe/suspicious/critical gruplarına ayırır.
- Fixture metadata içindeki işaretli bölgeleri doküman üstünde overlay olarak gösterir.
- İnceleme sonunda dokümanı forged veya genuine olarak işaretlemeye izin verir.
- Hazır fixture dokümanları ve yeni yüklenen görsellerle aynı analiz arayüzünü kullanır.
Bu proje otomatik hukuki/finansal karar motoru değildir. Üretilen skorlar ve etiketler inceleme sinyali olarak düşünülmelidir; nihai karar kullanıcı incelemesine bırakılır.
- Svelte 5
- SvelteKit
- TypeScript
- apple-svelte
- Tesseract.js
- Sharp
- Material Symbols Rounded
src/
routes/
+page.svelte # Project overview
analyze/+page.svelte # Document review workspace
api/documents/+server.ts # Fixture document loader
api/ocr/+server.ts # Upload + OCR endpoint
lib/
components/ # Viewer, overlays, lists, controls
stores/document.svelte.ts # Document/OCR/review state
types/anomaly.ts # Shared document and anomaly types
assets/documents/ # Tracked fixture images and OCR JSON
static/assets/documents/ # Uploaded images and generated OCR JSON in dev
src/lib/assets/documentsiçindeki fixture görselleri/api/documentstarafından listelenir.- Yanındaki
*.ocr.jsondosyaları varsa OCR cache olarak okunur. - Yeni yüklenen JPG/PNG dosyaları
/api/ocrendpoint'i üzerinden Tesseract.js ile işlenir. - OCR kelime confidence değeri deterministik olarak severity değerine çevrilir:
< 50: critical< 80: suspicious>= 80: safe
- Fixture metadata içindeki anomaly bölgeleri overlay olarak çizilir.
- Review score, OCR severity ve anomaly metadata üzerinden hesaplanır.
bun installNode kullanıyorsanız:
npm installbun run devTarayıcıda:
http://127.0.0.1:5173/
bun run check
bun run build- Görseli
src/lib/assets/documents/altına ekleyin. - Varsa OCR çıktısını aynı isimle
*.ocr.jsonolarak ekleyin. - JSON yapısında
fullText,words, ve isteğe bağlıanomaliesalanlarını kullanın.
Örnek:
{
"fullText": "Invoice ...",
"words": [
{
"text": "Invoice",
"confidence": 91.2,
"bbox": { "x0": 100, "y0": 120, "x1": 180, "y1": 150 }
}
],
"anomalies": [
{
"id": 1,
"text": "Amount",
"x": 120,
"y": 240,
"width": 220,
"height": 48,
"type": "forged"
}
]
}- OCR kalitesi görsel çözünürlüğüne, dil verisine ve doküman düzenine bağlıdır.
- Upload endpoint'i geliştirme ortamında dosyaları
static/assets/documentsaltına yazar. - Mevcut anomaly detection katmanı fixture metadata ve OCR confidence sinyallerine dayanır; model tabanlı sahtecilik tespiti eklenmek istenirse bu katman ayrı bir servis olarak tasarlanmalıdır.