pdffr-langchain
v0.1.0
Published
LangChain.js document loader backed by pdffr: PDF → Markdown documents per page, local, with OCR only where needed.
Maintainers
Readme
pdffr-langchain
A LangChain.js document loader backed by pdffr: each PDF page becomes a Document of Markdown (headings, lists, tables, math), decompiled from the file's own glyph geometry in milliseconds, with on-device OCR only where a page needs it. Local and private — nothing is uploaded.
npm install pdffr-langchain @langchain/coreimport { PdffrLoader } from 'pdffr-langchain';
const loader = new PdffrLoader('report.pdf', { lang: 'eng' });
const docs = await loader.load();
// docs[i].pageContent → markdown for page i+1
// docs[i].metadata → { source, page, totalPages, ocrRegions, nativeChars }
// or one Document for the whole file
const [doc] = await new PdffrLoader('report.pdf', { splitPages: false }).load();Also accepts a Blob/File or a Uint8Array instead of a path. Options: ocr (default true), lang, splitPages (default true), concurrency.
Because the output is Markdown, downstream splitters can chunk on headings (MarkdownTextSplitter) and tables survive as tables.
MIT © Amer Sarhan
