Self-host textsnap
v0.4.0OCR CLI turning images into plaintext on your CPU
- Stars
- 196
- CPU
- Physical CPU cores (pinned to core count)
- Storage
- ~140 MB for PP-OCRv6, ~1.1 GB additional for VLM
What is textsnap?
textsnap is a Python command-line tool for optical character recognition on images, screenshots, direct image URLs, and webpage URLs. It uses a two-engine approach: PP-OCRv6 medium for fast default OCR, with an optional fallback to PaddleOCR-VL-1.5 for difficult pages or structured markdown output with tables and headings. The engines run on ONNX Runtime on plain CPU cores with no CUDA or M-series requirements. Models download on first run and then work fully offline. Features include clipboard input and output, batch processing, portable mode for copying the folder to run anywhere, multi-language support, and plain text or markdown output. Installs via pip with commands 'textsnap' and 'ocr' alias.
Should you self-host textsnap?
textsnap scores 45/100 on selfhost.directory (how scoring works) and ranks #8 of 12 in Document Processing. It has 196 GitHub stars.
It shipped 2 stable releases in the past year. The latest, v0.4.0, came out on 29 September 2026.
Setup is easy: most people get it running in one sitting. It is MIT-licensed and written mostly in Python.
Its closest alternative on selfhost.directory is Resume-Matcher (81/100, 28 908 stars). It scores higher overall, so compare the two before you pick. See textsnap vs Resume-Matcher side by side.
Features
- Batch Processing
- Clipboard input and output
- CPU-only ONNX Runtime
- Fallback to vision-language model
- Multi-language Support
- OCR from images and screenshots
- OCR from URLs and webpages
- Offline after first run
- Portable mode
- Structured markdown output
textsnap README
More in Data Extraction
webclawSelf-hosted web extraction turning pages into clean Markdown, JSON, and LLM-friendly text. CLI, HTTP API, and MCP server for AI assistants. Rust, AGPL-3.0.
13ftSelf-hosted, open-source paywall bypass proxy: paste a URL and 13ft fetches it as Googlebot, with Freedium and archive snapshot fallbacks, in Docker or plain Python.
anakinSelf-hosted open-source web scraping API turning pages into clean markdown or JSON, with an anti-detect Camoufox browser, proxy auto-selection and a web dashboard.
Apache TikaOpen-source toolkit that extracts text and metadata from 1000+ file types, with a self-hosted REST or gRPC server for search indexing and LLM/RAG pipelines.
Crawl4AICrawl4AI converts websites into LLM-ready Markdown for RAG and AI agents. Self-host via pip/Docker or use the cloud API. Open-source Apache-2.0.
dots.ocrOpen-source vision-language model for self-hosted OCR that turns multilingual PDFs and images into Markdown or JSON with layout boxes, and charts into SVG.
ExcaliburExcalibur is a self-hosted, open-source web interface for extracting tabular data from text-based PDFs, powered by Camelot, with CSV, Excel, JSON and HTML export.
firecrawlSupercharge your AI agents with data from the web and beyond. Building the library for superintelligence. 🔥
GitingestOpen-source tool that turns a Git repository into one prompt-ready text digest for LLMs. Use the CLI, the Python package, or a self-hosted Docker web server.
graph-nodeSelf-hosted, open-source Graph Node indexes Ethereum and other blockchains into PostgreSQL and serves subgraphs over GraphQL.
knowledge-graph-extractorTurn any document or a whole zip into an interactive knowledge graph, using a self-hosted Qwen3.6-35B-A3B-MTP on a single NVIDIA L4
maxunSelf-hosted and open-source web data platform: build scrape, crawl, extract, search and monitor robots in a no-code recorder or with an API, SDK, CLI or MCP.
0 comments