Install the package using npm:
npm install @cognipeer/to-markdown
Or using yarn:
yarn add @cognipeer/to-markdown
Or using pnpm:
pnpm add @cognipeer/to-markdown
The simplest way to convert a file is to provide its path:
import { convertToMarkdown } from '@cognipeer/to-markdown';
const markdown = await convertToMarkdown('./path/to/document.pdf');
console.log(markdown);
You can also convert files that are already loaded as buffers:
import { convertToMarkdown } from '@cognipeer/to-markdown';
import { readFileSync } from 'fs';
const buffer = readFileSync('./document.docx');
const markdown = await convertToMarkdown(buffer, {
fileName: 'document.docx' // Optional but recommended
});
console.log(markdown);
Convert base64-encoded data directly:
import { convertToMarkdown } from '@cognipeer/to-markdown';
// With data URL
const base64 = 'data:application/pdf;base64,JVBERi0xLjU...';
const markdown = await convertToMarkdown(base64);
// Or plain base64
const plainBase64 = 'JVBERi0xLjU...';
const markdown2 = await convertToMarkdown(plainBase64, {
fileName: 'document.pdf' // Helps with format detection
});
Use the saveToMarkdownFile function to save converted markdown to a file:
import { convertToMarkdown, saveToMarkdownFile } from '@cognipeer/to-markdown';
const markdown = await convertToMarkdown('./document.pdf');
const outputPath = await saveToMarkdownFile(
markdown,
'converted-document', // filename without extension
'./output' // output directory
);
console.log(`Saved to: ${outputPath}`);
The library is written in TypeScript and provides full type definitions:
import {
convertToMarkdown,
saveToMarkdownFile,
type ConverterOptions,
type ConverterInput
} from '@cognipeer/to-markdown';
const options: ConverterOptions = {
fileName: 'document.pdf',
forceExtension: '.pdf'
};
const input: ConverterInput = buffer; // or string
const result = await convertToMarkdown(input, options);