What This Repo Claims
"Offers a free cloud API for instant processing or a 100% private, local mode."
That's the core promise. Two paths: cloud for convenience, local for privacy. 1.4k stars. Backed by Nanonets, a funded OCR company.
The job seeker stack use case is obvious — parse a resume locally, feed it to ollama, tailor a cover letter without your CV leaving your machine. That's exactly what we tested for.
What I Tested
Environment: macOS Apple Silicon, repoverifiertest user, Python 3.13, docstrange 1.1.8
Task: Extract markdown from a simple test PDF locally, with no data leaving the machine.
What Happened
Local Mode — CUDA Only
The README says
gpu=True enables "100% local processing — no data sent anywhere." We ran it:
extractor = DocumentExtractor(gpu=True)
RuntimeError: GPU preference specified but no GPU is available.
Please ensure CUDA is installed and a compatible GPU is present.
Apple Silicon has no CUDA support. No fallback. No MPS (Metal Performance Shaders). No CPU local mode despite the README implying one exists (
cpu=True throws unexpected keyword argument).
The source code confirms it —
DocumentExtractor.__init__() accepts only gpu: bool. Cloud is the default. There is no local CPU path.
Cloud Mode — Rate Limited on First Use
Default init sends your document to Nanonets cloud. No API key needed to start, but it immediately prompts Google OAuth:
🌐 Opening authentication page...
⏳ Waiting for authentication...
After completing Google auth with a fresh account:
Rate limit exceeded (10k/month). Please try again later.
Rate limited on the very first document extraction after a fresh login.
The Gotcha
The README lists "local processing for privacy and compliance" as a primary use case. In practice:
- Local mode = CUDA GPU only. Excludes Apple Silicon, any CPU-only machine, and most developer laptops.
- Cloud mode = requires Google auth, and the rate limit error on first use suggests account or IP-level throttling beyond the stated 10k/month.
If you have a Linux machine with an NVIDIA GPU, local mode may work. We could not verify this.
Verdict: OVERHYPED
The local privacy claim is the headline feature and it doesn't work on the most common developer hardware. Cloud mode works only if you clear the auth and rate limit hurdles. For the job seeker stack — parsing resumes locally with ollama — this does not fit. Look at dedoc or marker instead.
This review follows RepoVerifier Standard v1.0. [Read the standard →](https://repoverifier.dev/about)