{"id":46937917,"url":"https://github.com/herrkaefer/anything2md","last_synced_at":"2026-03-11T06:04:20.543Z","repository":{"id":341037004,"uuid":"1168631872","full_name":"herrkaefer/anything2md","owner":"herrkaefer","description":"Python package and CLI for converting documents to Markdown using Cloudflare Workers AI toMarkdown.","archived":false,"fork":false,"pushed_at":"2026-02-27T18:41:52.000Z","size":68,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-02-27T21:26:59.620Z","etag":null,"topics":["automation","cli","cloudflare","cloudflare-workers","cloudflare-workers-ai","content-extraction","developer-tools","document-conversion","document-to-markdown","docx-to-markdown","file-conversion","image-to-markdown","markdown","markdown-converter","ocr","pdf","pdf-to-markdown","python","workers-ai","xlsx-to-markdown"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/herrkaefer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-27T16:06:44.000Z","updated_at":"2026-02-27T18:41:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/herrkaefer/anything2md","commit_stats":null,"previous_names":["herrkaefer/anything2md"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/herrkaefer/anything2md","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrkaefer%2Fanything2md","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrkaefer%2Fanything2md/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrkaefer%2Fanything2md/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrkaefer%2Fanything2md/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/herrkaefer","download_url":"https://codeload.github.com/herrkaefer/anything2md/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrkaefer%2Fanything2md/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30372564,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T21:41:54.280Z","status":"online","status_checked_at":"2026-03-11T02:00:07.027Z","response_time":84,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","cli","cloudflare","cloudflare-workers","cloudflare-workers-ai","content-extraction","developer-tools","document-conversion","document-to-markdown","docx-to-markdown","file-conversion","image-to-markdown","markdown","markdown-converter","ocr","pdf","pdf-to-markdown","python","workers-ai","xlsx-to-markdown"],"created_at":"2026-03-11T06:03:56.292Z","updated_at":"2026-03-11T06:04:20.530Z","avatar_url":"https://github.com/herrkaefer.png","language":"Python","readme":"# anything2md\n\n```text\n                     __  __    _            ___                 __\n  ____ _____  __  __/ /_/ /_  (_)___  ____ |__ \\ ____ ___  ____/ /\n / __ `/ __ \\/ / / / __/ __ \\/ / __ \\/ __ `/_/ // __ `__ \\/ __  / \n/ /_/ / / / / /_/ / /_/ / / / / / / / /_/ / __// / / / / / /_/ /  \n\\__,_/_/ /_/\\__, /\\__/_/ /_/_/_/ /_/\\__, /____/_/ /_/ /_/\\__,_/   \n           /____/                  /____/                         \n```\n\n[![CI](https://github.com/herrkaefer/anything2md/actions/workflows/ci.yml/badge.svg)](https://github.com/herrkaefer/anything2md/actions/workflows/ci.yml)\n[![PyPI version](https://img.shields.io/pypi/v/anything2md.svg)](https://pypi.org/project/anything2md/)\n[![Python \u003e=3.10](https://img.shields.io/badge/python-%3E%3D3.10-blue.svg)](https://pypi.org/project/anything2md/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nPython package and CLI for converting URLs or local documents into Markdown using Cloudflare Markdown Conversion APIs.\n\n## Install\n\nFrom PyPI with `uv`:\n\n```bash\nuv add anything2md\n```\n\nOr from PyPI (pip):\n\n```bash\npip install anything2md\n```\n\n\n### Cloudflare Token Setup\n\nCreate a Cloudflare API Token for the target account and include these permissions:\n\n- `Workers AI` -- Read\n- `Browser Rendering` -- Edit\n\n## Usage\n\n```python\nimport anything2md\n\nmdconverter = anything2md(account_id=\"xxx\", api_token=\"xxx\")\nresult = mdconverter.transform(\"https://example.com\")\nresult = mdconverter.transform(\"https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/somatosensory.pdf\")\nresult = mdconverter.transform(\"https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/cat.jpeg\")\n\n# Browser Rendering advanced options for webpage URLs\nresult = mdconverter.transform(\n    \"https://example.com\",\n    url_strategy=\"browser\",\n    wait_until=\"networkidle2\",\n    reject_request_pattern=[\"/^.*\\\\.(css)$/\", \"/analytics/\"],\n)\nprint(result.markdown)\n```\n\n## Supported Formats\n\nBased on Cloudflare docs, current supported extensions include:\n\n`pdf`, `jpeg/jpg`, `png`, `webp`, `svg`, `html/htm`, `xml`, `csv`, `docx`, `xlsx`, `xlsm`, `xlsb`, `xls`, `et`, `ods`, `odt`, `numbers`\n\n`url` via Browser Rendering Markdown endpoint.\n\n## Local Usage\n\nInstall dependencies:\n\n```bash\nuv sync\n```\n\n```bash\nexport CLOUDFLARE_ACCOUNT_ID=\"your_account_id\"\nexport CLOUDFLARE_API_TOKEN=\"your_api_token\"\n\nuv run anything2md https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/somatosensory.pdf\nuv run anything2md https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/cat.jpeg -o output.md\nuv run anything2md https://example.com\nuv run anything2md https://example.com --url-strategy browser --wait-until networkidle2 --reject-request-pattern '/^.*\\.(css)$/' --reject-request-pattern '/analytics/'\n```\n\n## References\n\nCloudflare docs:\n- Markdown Conversion overview: https://developers.cloudflare.com/workers-ai/features/markdown-conversion/\n- API reference (`toMarkdown`): https://developers.cloudflare.com/api/resources/ai/methods/run/#to-markdown-conversion-to-markdown\n- API reference (`supported formats`): https://developers.cloudflare.com/api/resources/ai/methods/run/#to-markdown-conversion-supported-formats\n- Browser Rendering Markdown endpoint (URL input): https://developers.cloudflare.com/browser-rendering/rest-api/markdown-endpoint/\n- Markdown for Agents (`Accept: text/markdown`): https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/\n\n## License\n\nMIT\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrkaefer%2Fanything2md","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fherrkaefer%2Fanything2md","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrkaefer%2Fanything2md/lists"}