From 1ea7a48912bb0959ec2469caea477bb5b378eb3a Mon Sep 17 00:00:00 2001 From: Daniel Bedeleanu Date: Fri, 17 Apr 2026 11:45:36 +0300 Subject: [PATCH] fix: increase OCR timeout and configure Next.js dev origins MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Increased tesseract.js worker creation timeout from 8s → 20s (accounts for lazy loading and language model download on first run) - Added allowedDevOrigins to next.config.mjs to permit localhost and .local hostnames - Resolves OCR timeout on slow connections and first-time initialization --- frontend/components/Scanner.tsx | 2 +- frontend/next.config.mjs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/frontend/components/Scanner.tsx b/frontend/components/Scanner.tsx index 69d17b97..91204b43 100644 --- a/frontend/components/Scanner.tsx +++ b/frontend/components/Scanner.tsx @@ -165,7 +165,7 @@ export default function Scanner({ onScanSuccess, onOCRMatch, paused }: ScannerPr // Lazy-load tesseract.js only when OCR is actually needed const { createWorker } = await import('tesseract.js'); const workerPromise = createWorker('eng'); - const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error("OCR Engine timeout")), 8000)); + const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error("OCR Engine timeout")), 20000)); const worker = await Promise.race([workerPromise, timeoutPromise]) as any; const dataUrl = canvas.toDataURL('image/jpeg', 0.85); diff --git a/frontend/next.config.mjs b/frontend/next.config.mjs index edf79256..5d746c40 100644 --- a/frontend/next.config.mjs +++ b/frontend/next.config.mjs @@ -10,6 +10,11 @@ const withPWA = withPWAInit({ /** @type {import('next').NextConfig} */ const nextConfig = { output: "standalone", + allowedDevOrigins: [ + "localhost", + "127.0.0.1", + "*.local", + ], }; export default withPWA(nextConfig);