Skip to content

Releases: 0xovo/LiteDoc

LiteDoc v2.1.1 Release Notes 🚀

11 Jun 18:03
fca9c70

Choose a tag to compare

🧬 Recursive Sub-Column DLA Engine

  • Completely overhauled the Document Layout Analysis (DLA) segmenter.
  • Added Recursive Sub-Column Detection: The engine now accurately detects nested gutters inside columns.
  • Fixed: Severe text interleaving issues in multi-column scientific papers (e.g., JAMA publications). Floating sidebar quotes are now cleanly isolated from main body paragraphs, ensuring perfect top-to-bottom reading order.

📝 A Quick Note on PDF Quality & Development

I am continuously experimenting with creative ways to push the PDF extraction engine further.
However, please remember that this tool is not magic extraction quality inherently depends on the structure, formatting, and text encoding of the original PDF you upload.

To those offering constructive feedback, thank you! To the critics expecting perfection: please remember this is a free, local tool still in active development and it is constantly evolving.


Support the project: If this tool saves you time (and LLM tokens), consider buying me a coffee!

🛠️ LiteDoc v2.0.1 (Patch Update)

11 Jun 13:05
944fb46

Choose a tag to compare

This update brings critical under-the-hood tweaks to the core Document Layout Analysis (DLA) engine, alongside some nice mobile performance polish.

⚙️ Core PDF Engine Tweaks

  • Multi-Column Layout Fixes: Rebuilt the segmentBox logic. Dense academic papers (like dual-column layouts) will now extract perfectly down the page instead of tearing horizontally and scrambling sentences.
  • RTL Language Parsing: Added native heuristics for Arabic and Hebrew text. The engine now correctly sequences right-to-left blocks without breaking the document flow.
  • Heavy PDF Stability: Patched background OCR timeouts. Large, math-intensive PDFs that require heavy fallback extraction will no longer crash the background worker.

v2.0.0

image

vs v2.0.1

image

📱 Mobile UI Polish

  • Smooth Splash Screen: Added a seamless preloader to completely hide the "flash of unstyled text" while mobile processors compile the CSS.
  • Performant Animations: Swapped out the heavy CSS blur effects on mobile for a lightweight fade-in to prevent stutter on older phones.
  • Clean Single-File Build: Removed dead Service Worker code and SEO baggage from the GitHub release package. The app is now a perfectly self-contained index.html file.

📝 Developer Note

While this update solves some of our biggest edge cases, the engine is still not 100% perfect. We are continuing to aggressively test and improve the layout analysis over time. We're going to make this work. Stay tuned!

Litedoc v2.0: The Major Release

10 Jun 20:50
47dc546

Choose a tag to compare

Version 2.0 Runs in Browser Open Source

Litedoc v2.0 — The Major Release

The biggest update yet. Faster. Smarter. Tougher.

Website
Twitter
Ko-fi
GitHub


Core Engine Upgrades

Document Layout Analysis (DLA) Engine

Replaced blind linear reading with a recursive XY-Cut algorithm. Litedoc now geometrically maps every page, isolating headers, sidebars, and main text blocks for perfect reconstruction.

DLA Engine DLA Engine 2 DLA Engine 3

Asymmetrical Multi-Column Routing

Massive improvements for academic papers. The engine now detects microscopic gutters and natively processes columns top-to-bottom, eliminating horizontal text interleaving.


Vector-Based Table Reconstruction

Enhanced addons.js intersection matrix logic now captures table structures as clean Markdown grids, bypassing the need for OCR on structured data.


Heavy-Duty Memory Management

Massive stability boost for large (200+ page) documents. The new Batch Queuing system processes files in 10-page chunks, forcefully clearing VRAM between cycles to prevent browser crashes.


Performance & Reliability

Language Auto-Detect (OSD Router)

The OCR engine now runs a lightweight 400×400px OSD pre-pass to detect script (Arabic, Latin, etc.) before initializing the heavy-duty language workers.

OSD Router

Intelligent Image Triage

Automatically detects native text vs. image-based PDFs, routing to the optimal path to save processing time and battery.

Image Triage

Mobile & Desktop Optimization

Aggressive performance tuning including a 150 DPI cap for mobile OCR and worker respawning every 5–10 pages to defeat iOS/Android thermal throttling.


Crash Recovery & Telemetry

If a file fails, the UI now flags it with an error badge and provides a one-click litedoc-crash-log.txt for easy bug reporting.
image
Telemetry


Developer & UX / UI Improvements

Mobile UI

We've completely overhauled the UI for mobile devices, ensuring a seamless experience on all screen sizes.

Mobile UI

Modular Architecture

Completely decoupled the codebase. The project is now structured for easy community contributions, with a new Python build script that compiles the distribution-ready index.html.

View Project Structure
src/
├── index.html                  # Main entry point
├── css/                        # Stylesheets
│   ├── addons.css              # Plugin & extra component styles
│   ├── main.css                # Core application styles
│   └── mobile.css              # Mobile-specific overrides
└── js/                         # Application Logic
    ├── addons.js               # OCR & Password handling
    ├── demo.js                 # Sample document logic
    ├── downloads.js            # ZIP & individual file export
    ├── dropzone.js             # File upload & triage UI
    ├── file-tree.js            # Workspace explorer logic
    ├── main.js                 # Central orchestrator
    ├── markdown-renderer.js    # MD & Math processing
    ├── mobile-ux.js            # Mobile view switching
    ├── ocr.js                  # Tesseract & OCR engine
    ├── pdf-parser.js           # Core PDF.js extraction
    ├── reset-utils.js          # Workspace cleanup helpers
    ├── state.js                # Global application state
    ├── terminal.js             # Diagnostic logging
    ├── ui-controls.js          # Editor & button interactions
    ├── ui.js                   # General UI component logic
    └── utils.js                # Shared helper functions

Manual Hallucination Fallback

Added an "Unformat" button inside the editor. If the parser ever makes a mistake, one click instantly strips markdown/table formatting, returning the selection to plain text.

image

Queue Control

New "Skip" functionality allows users to force-abort long-running files without locking the application thread.

Queue Control

Minor Improvements & Maintenance

Area What Changed
General Polish Series of under-the-hood refinements and stability patches across the interface
Micro-Optimizations Dozens of small adjustments to rendering speed, UI responsiveness, and memory footprint
Refined Error Handling Improved edge-case handling for malformed PDF object streams to prevent silent failures

A Note on Performance

Litedoc runs entirely in your browser. While v2.0 handles large files significantly better, please be mindful that OCR is computationally expensive. For massive 200+ page documents, stick to native text PDFs whenever possible—if you force OCR on a 200-page image-only PDF in a mobile browser, you're going to hit hardware limits (because physics).


🔭 Looking Ahead

A massive thank you to everyone who supported this project via Ko-fi.

My focus moving forward is purely on stability, broader PDF format support, and extreme optimization.

🤝 Want to Help?

The codebase is now fully modular. If you're a dev, check the repo and send a PR; it's easier than ever to contribute. I'm taking a well-deserved break, but if you have questions, reach out via email or X.

Link
🌐 Website litedoc.xyz
𝕏 Twitter @0xovoo
Ko-fi ko-fi.com/0xovo
📦 GitHub github.com/0xovo/LiteDoc
📧 Email contact@litedoc.xyz
---

🧪 Tests & Benchmarks

Our test suite and performance benchmarks are fully updated in the repository to guarantee conversion parity across standard document layouts.


Made with passion · No cloud · No nonsense · Just your browser