{"adoption": {"forks": 310, "observed_at": "2026-08-28T04:05:50.432105+00:00", "stars": 1892}, "canonical_url": "https://ross.abutalabs.com/products/deepseek_ocr_app", "card": {"archived": false, "artifact_type": "application", "description": "A quick vibe coded app for deepseek OCR", "domain": ["computer-vision", "pdf", "web-development", "developer-tools"], "enriched": true, "function": ["ocr", "pdf", "image-processing", "web-framework", "http-server"], "health_score": 65, "homepage": null, "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["rdumasia303/deepseek_ocr_app"], "name": "rdumasia303/deepseek_ocr_app", "platform": ["python", "self-hosted"], "pushed_at": "2026-03-31T08:03:16+00:00", "repo": "rdumasia303/deepseek_ocr_app", "stars": 1892, "tags": ["deepseek-ocr", "document-digitization", "pdf-to-markdown", "fastapi", "react", "formula-recognition", "bounding-boxes", "natural-language-processing", "nodejs", "web-server", "docker"], "topics": [], "urls": [], "use_cases": ["extract text from scanned pdfs", "convert pdf documents to markdown", "ocr images with bounding boxes", "digitize scanned documents into word docx", "extract formulas and tables from academic papers", "pull structured data from invoices and forms"], "what_it_is": "A self-hosted OCR web application combining a React frontend with a FastAPI backend, powered by the DeepSeek-OCR model. It processes images and PDFs (up to 100MB) and exports results as Markdown, HTML, DOCX, or JSON while preserving formulas, tables, and images.", "when_to_avoid": ["you need a lightweight CLI or library to embed OCR in your own pipeline", "you require cloud-scale throughput or managed OCR APIs", "you lack GPU resources, since DeepSeek-OCR inference is compute-heavy"], "when_to_choose": ["you want a self-hosted OCR UI with a web interface", "you need multi-page PDF OCR with export to Markdown, HTML, DOCX, or JSON", "you want DeepSeek-OCR features like formula preservation and bounding boxes without writing code"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/deepseek_ocr_app", "repo": "rdumasia303/deepseek_ocr_app", "role": "main", "score": 50}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:50.432105+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:12:58.217648+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f8b28d5dc7953d2b92839857cf5bb19e2056413b3049a4da44a62d61d9474d62", "fetched_at": "2026-08-28T04:05:50.432105+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rdumasia303/deepseek_ocr_app"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 75, "longevity": 22, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 317, "days_push": 155, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 50, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}