{"_id":"@drcomgenius/n8n-nodes-anydoc","_rev":"2-67c1ecb77bccfb3b918eda7c08893c3a","name":"@drcomgenius/n8n-nodes-anydoc","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@drcomgenius/n8n-nodes-anydoc","version":"0.1.0","keywords":["n8n-community-node-package","n8n","anydoc","firecrawl","markdown","docx","pdf","pptx","xlsx","document-conversion","office"],"author":{"name":"DrComgenius","email":"emmanuelnwokeukwu6@gmail.com"},"license":"MIT","_id":"@drcomgenius/n8n-nodes-anydoc@0.1.0","maintainers":[{"name":"drcomgenius","email":"emmanuelnwokeukwu6@gmail.com"}],"homepage":"https://github.com/comgenius/n8n-nodes-anydoc","bugs":{"url":"https://github.com/comgenius/n8n-nodes-anydoc/issues"},"n8n":{"nodes":["dist/nodes/AnyDoc/AnyDoc.node.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"6ef543a6ff6483d3ef131523b254771d2702459b","tarball":"https://registry.npmjs.org/@drcomgenius/n8n-nodes-anydoc/-/n8n-nodes-anydoc-0.1.0.tgz","fileCount":8,"integrity":"sha512-WkV6XM4RbT+UcwNU8YPSsk/yjj1wFNYqNehKOuSmX56TnHXk4Ep34uYcOVq9pT5mFGRwZMmXzNgydzDCNDlzsQ==","signatures":[{"sig":"MEUCIQC9Bg8QaNSqHwebru0rDxD4KzHQ69koZkp2AR5cOPTjzgIgW9UKMOHeN33ZAAVWI3SrwUFXUSwaRzvhfknLerW/psg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79393},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"e8e0c2f1e798771f7284fb3f69ac645bb7cb88f1","scripts":{"dev":"tsc --watch","lint":"eslint nodes package.json","build":"tsc && gulp build:icons","format":"prettier nodes --write","lintfix":"eslint nodes package.json --fix","prepublishOnly":"npm run build && npm run lint"},"_npmUser":{"name":"drcomgenius","email":"emmanuelnwokeukwu6@gmail.com"},"repository":{"url":"git+https://github.com/comgenius/n8n-nodes-anydoc.git","type":"git"},"_npmVersion":"11.6.2","description":"n8n community node that converts Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument files to clean Markdown using @firecrawl/anydoc.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@firecrawl/anydoc":"^0.1.7"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.0","eslint":"^8.57.0","prettier":"^3.3.2","typescript":"^5.5.3","@types/node":"^20.14.0","n8n-workflow":"*","@typescript-eslint/parser":"^7.15.0","eslint-plugin-n8n-nodes-base":"^1.16.3"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-anydoc_0.1.0_1786114484344_0.32525407102189385","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@drcomgenius/n8n-nodes-anydoc","version":"0.1.1","description":"n8n community node that converts Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument files to clean Markdown using @firecrawl/anydoc.","keywords":["n8n-community-node-package","n8n","anydoc","firecrawl","markdown","docx","pdf","pptx","xlsx","document-conversion","office"],"license":"MIT","homepage":"https://github.com/comgenius/n8n-nodes-anydoc","author":{"name":"DrComgenius","email":"emmanuelnwokeukwu6@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/comgenius/n8n-nodes-anydoc.git"},"engines":{"node":">=20.15"},"main":"index.js","scripts":{"build":"tsc && gulp build:icons","dev":"tsc --watch","format":"prettier nodes --write","lint":"eslint nodes package.json","lintfix":"eslint nodes package.json --fix","prepublishOnly":"npm run build && npm run lint"},"n8n":{"n8nNodesApiVersion":1,"nodes":["dist/nodes/AnyDoc/AnyDoc.node.js"]},"dependencies":{"@firecrawl/anydoc":"^0.1.7"},"devDependencies":{"@types/node":"^20.14.0","@typescript-eslint/parser":"^7.15.0","eslint":"^8.57.0","eslint-plugin-n8n-nodes-base":"^1.16.3","gulp":"^5.0.0","n8n-workflow":"*","prettier":"^3.3.2","typescript":"^5.5.3"},"peerDependencies":{"n8n-workflow":"*"},"gitHead":"977327f522b6169dfb5841d6beda6c3e700853f6","_id":"@drcomgenius/n8n-nodes-anydoc@0.1.1","bugs":{"url":"https://github.com/comgenius/n8n-nodes-anydoc/issues"},"_nodeVersion":"22.23.1","_npmVersion":"12.0.2","dist":{"integrity":"sha512-OlbJjhTFRnMShIXPhibomhJ+M03A2ZzkaahRNPy3cjnxp2BiLwzER7xasQxGuEA5Iy1smNJr1orWxAR50AGBqw==","shasum":"4e50007490c515eb8da26a1568e2b03fd97f18f5","tarball":"https://registry.npmjs.org/@drcomgenius/n8n-nodes-anydoc/-/n8n-nodes-anydoc-0.1.1.tgz","fileCount":8,"unpackedSize":79148,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@drcomgenius%2fn8n-nodes-anydoc@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDc+9aa0/AOsh1r3AOOpNaKSy1r3mJ/c4tj/oCTsyw12AIgc4vXyl4h3Ul5OETsQu/9ox2F5n96WU4t5mTnc0kdlxE="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cb7dcff5-8673-453f-9600-2486e5243b30"}},"directories":{},"maintainers":[{"name":"drcomgenius","email":"emmanuelnwokeukwu6@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-anydoc_0.1.1_1786114974404_0.07023645732634654"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-07T14:54:44.215Z","modified":"2026-08-07T15:02:54.901Z","0.1.0":"2026-08-07T14:54:44.472Z","0.1.1":"2026-08-07T15:02:54.547Z"},"bugs":{"url":"https://github.com/comgenius/n8n-nodes-anydoc/issues"},"author":{"name":"DrComgenius","email":"emmanuelnwokeukwu6@gmail.com"},"license":"MIT","homepage":"https://github.com/comgenius/n8n-nodes-anydoc","keywords":["n8n-community-node-package","n8n","anydoc","firecrawl","markdown","docx","pdf","pptx","xlsx","document-conversion","office"],"repository":{"type":"git","url":"git+https://github.com/comgenius/n8n-nodes-anydoc.git"},"description":"n8n community node that converts Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument files to clean Markdown using @firecrawl/anydoc.","maintainers":[{"name":"drcomgenius","email":"emmanuelnwokeukwu6@gmail.com"}],"readme":"# n8n-nodes-anydoc\n\nAn [n8n](https://n8n.io/) community node that converts **Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument** files into clean GitHub-Flavored Markdown, powered by [`@firecrawl/anydoc`](https://github.com/firecrawl/anydoc).\n\nPerfect for feeding office documents into LLM/AI Agent nodes without dealing with format-specific parsers.\n\n[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.\n\n---\n\n## Table of contents\n\n- [Installation](#installation)\n- [Operations](#operations)\n- [Node inputs](#node-inputs)\n- [Node outputs](#node-outputs)\n- [Supported formats](#supported-formats)\n- [Coolify / self-hosted Docker notes](#coolify--self-hosted-docker-notes)\n- [Troubleshooting](#troubleshooting)\n- [Development](#development)\n- [License](#license)\n\n---\n\n## Installation\n\nFollow the [official community-nodes install guide](https://docs.n8n.io/integrations/community-nodes/installation/), then enter:\n\n```\nn8n-nodes-anydoc\n```\n\nas the npm package name in **Settings → Community Nodes → Install**.\n\nThe node will appear in the palette as **AnyDoc**.\n\n## Operations\n\n- **Convert to Markdown** — reads a document from a binary property and returns Markdown as a JSON field.\n\n## Node inputs\n\n| Field | Default | Description |\n|---|---|---|\n| **Input Binary Field** | `data` | Name of the binary property holding the source document (typical output of *Read Binary File*, *HTTP Request*, *Google Drive*, etc.). |\n| **Output Field** | `markdown` | Name of the JSON field the resulting Markdown will be written to. |\n| **Options → Format Hint** | `Auto-Detect` | Override auto-detection. **Required for CSV** (which has no content signature). |\n| **Options → Include Source Metadata** | `false` | Adds `sourceFileName` and `detectedFormat` to the output JSON. |\n| **Options → Keep Input JSON** | `true` | Merge the incoming item's JSON fields into the output. Disable to emit *only* the markdown field. |\n\n## Node outputs\n\nA single main output. Each output item's JSON contains at least:\n\n```json\n{\n\t\"markdown\": \"# Report Q4 …\\n\\n| … | … |\\n| --- | --- |\\n…\"\n}\n```\n\nWhen *Include Source Metadata* is on:\n\n```json\n{\n\t\"markdown\": \"…\",\n\t\"sourceFileName\": \"report.docx\",\n\t\"detectedFormat\": \"docx\"\n}\n```\n\nIf the node runs with **Continue On Fail** enabled and conversion fails (encrypted file, unsupported format, image-only PDF, …), the item becomes:\n\n```json\n{ \"error\": \"…\", \"code\": \"Encrypted\" }\n```\n\n## Supported formats\n\n| Family | Extensions |\n|---|---|\n| Word | `.doc`, `.docx`, `.docm` |\n| PowerPoint | `.ppt`, `.pps`, `.pot`, `.pptx`, `.pptm`, `.ppsx`, `.ppsm` |\n| Excel | `.xls`, `.xlsx`, `.xlsm`, `.xlsb` |\n| OpenDocument | `.odt`, `.ods`, `.odp` |\n| Rich Text Format | `.rtf` |\n| EPUB | `.epub` |\n| CSV | `.csv` (needs Format Hint = CSV) |\n| PDF | `.pdf` (text-based only — no OCR) |\n\nImage-only / scanned PDFs return `Unsupported` — use Firecrawl Parse or a dedicated OCR service for those.\n\n## Coolify / self-hosted Docker notes\n\nThis node depends on `@firecrawl/anydoc`, which ships **prebuilt native binaries** (Rust via napi-rs). It needs to match your container's architecture.\n\n- Official `n8nio/n8n` images run on **Debian (glibc)** for both `linux/amd64` and `linux/arm64` — the anydoc prebuild resolves automatically. No extra steps needed.\n- Make sure `/home/node/.n8n` is a **persistent volume** in Coolify (default in n8n's Coolify template). The community package is installed there, so a rebuild without a volume will wipe it.\n- If you self-hosted on **Alpine**, the glibc prebuild will not run — switch to the Debian image or bake anydoc into a custom image with musl support.\n\nExample minimal `docker-compose.yml` snippet Coolify can consume:\n\n```yaml\nservices:\n\tn8n:\n\t\timage: n8nio/n8n:latest\n\t\tenvironment:\n\t\t\t- N8N_COMMUNITY_PACKAGES_ENABLED=true\n\t\t\t- N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true\n\t\tvolumes:\n\t\t\t- n8n_data:/home/node/.n8n\nvolumes:\n\tn8n_data:\n```\n\n## Troubleshooting\n\n| Symptom | Cause / fix |\n|---|---|\n| `Cannot find module '@firecrawl/anydoc-linux-x64-gnu'` | The container is Alpine (musl). Use the Debian n8n image (`n8nio/n8n:latest`), which is glibc. |\n| Error code `Encrypted` | The document is password protected. anydoc refuses to guess. Decrypt upstream. |\n| Error code `Unsupported` on a PDF | Image-only PDF. Use OCR (Firecrawl Parse, Tesseract, etc.). |\n| Empty markdown from CSV | Set **Options → Format Hint = CSV**. CSV has no content signature to auto-detect. |\n| Tables come out weirdly aligned | anydoc emits GFM tables — Markdown viewers with strict column widths look strange; the rendered output is fine. |\n\n## Development\n\n```bash\ngit clone https://github.com/your-github/n8n-nodes-anydoc\ncd n8n-nodes-anydoc\nnpm install\nnpm run build\n```\n\nTo test in a local n8n:\n\n```bash\nnpm link\ncd ~/.n8n/nodes    # or wherever custom nodes live\nnpm link n8n-nodes-anydoc\nn8n start\n```\n\nPublish:\n\n```bash\nnpm login\nnpm publish --access public\n```\n\nThe package will then be installable through n8n's Community Nodes UI.\n\n## License\n\n[MIT](LICENSE) — matches the upstream [`@firecrawl/anydoc`](https://github.com/firecrawl/anydoc) license.\n","readmeFilename":"README.md"}