npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@drcomgenius/n8n-nodes-anydoc

v0.1.1

Published

n8n community node that converts Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument files to clean Markdown using @firecrawl/anydoc.

Readme

n8n-nodes-anydoc

An n8n community node that converts Word, PowerPoint, Excel, PDF, RTF, EPUB, CSV, and OpenDocument files into clean GitHub-Flavored Markdown, powered by @firecrawl/anydoc.

Perfect for feeding office documents into LLM/AI Agent nodes without dealing with format-specific parsers.

n8n is a fair-code licensed workflow automation platform.


Table of contents


Installation

Follow the official community-nodes install guide, then enter:

n8n-nodes-anydoc

as the npm package name in Settings → Community Nodes → Install.

The node will appear in the palette as AnyDoc.

Operations

  • Convert to Markdown — reads a document from a binary property and returns Markdown as a JSON field.

Node inputs

| Field | Default | Description | |---|---|---| | Input Binary Field | data | Name of the binary property holding the source document (typical output of Read Binary File, HTTP Request, Google Drive, etc.). | | Output Field | markdown | Name of the JSON field the resulting Markdown will be written to. | | Options → Format Hint | Auto-Detect | Override auto-detection. Required for CSV (which has no content signature). | | Options → Include Source Metadata | false | Adds sourceFileName and detectedFormat to the output JSON. | | Options → Keep Input JSON | true | Merge the incoming item's JSON fields into the output. Disable to emit only the markdown field. |

Node outputs

A single main output. Each output item's JSON contains at least:

{
	"markdown": "# Report Q4 …\n\n| … | … |\n| --- | --- |\n…"
}

When Include Source Metadata is on:

{
	"markdown": "…",
	"sourceFileName": "report.docx",
	"detectedFormat": "docx"
}

If the node runs with Continue On Fail enabled and conversion fails (encrypted file, unsupported format, image-only PDF, …), the item becomes:

{ "error": "…", "code": "Encrypted" }

Supported formats

| Family | Extensions | |---|---| | Word | .doc, .docx, .docm | | PowerPoint | .ppt, .pps, .pot, .pptx, .pptm, .ppsx, .ppsm | | Excel | .xls, .xlsx, .xlsm, .xlsb | | OpenDocument | .odt, .ods, .odp | | Rich Text Format | .rtf | | EPUB | .epub | | CSV | .csv (needs Format Hint = CSV) | | PDF | .pdf (text-based only — no OCR) |

Image-only / scanned PDFs return Unsupported — use Firecrawl Parse or a dedicated OCR service for those.

Coolify / self-hosted Docker notes

This node depends on @firecrawl/anydoc, which ships prebuilt native binaries (Rust via napi-rs). It needs to match your container's architecture.

  • Official n8nio/n8n images run on Debian (glibc) for both linux/amd64 and linux/arm64 — the anydoc prebuild resolves automatically. No extra steps needed.
  • 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.
  • 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.

Example minimal docker-compose.yml snippet Coolify can consume:

services:
	n8n:
		image: n8nio/n8n:latest
		environment:
			- N8N_COMMUNITY_PACKAGES_ENABLED=true
			- N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
		volumes:
			- n8n_data:/home/node/.n8n
volumes:
	n8n_data:

Troubleshooting

| Symptom | Cause / fix | |---|---| | Cannot find module '@firecrawl/anydoc-linux-x64-gnu' | The container is Alpine (musl). Use the Debian n8n image (n8nio/n8n:latest), which is glibc. | | Error code Encrypted | The document is password protected. anydoc refuses to guess. Decrypt upstream. | | Error code Unsupported on a PDF | Image-only PDF. Use OCR (Firecrawl Parse, Tesseract, etc.). | | Empty markdown from CSV | Set Options → Format Hint = CSV. CSV has no content signature to auto-detect. | | Tables come out weirdly aligned | anydoc emits GFM tables — Markdown viewers with strict column widths look strange; the rendered output is fine. |

Development

git clone https://github.com/your-github/n8n-nodes-anydoc
cd n8n-nodes-anydoc
npm install
npm run build

To test in a local n8n:

npm link
cd ~/.n8n/nodes    # or wherever custom nodes live
npm link n8n-nodes-anydoc
n8n start

Publish:

npm login
npm publish --access public

The package will then be installable through n8n's Community Nodes UI.

License

MIT — matches the upstream @firecrawl/anydoc license.