A plugin for parsing markdown files in Flatfile.
| Install | npm i @flatfile/plugin-extract-markdown | 
|---|---|
| Source: | View source | 
| Package: | @flatfile/plugin-extract-markdown 1 installs | 
The @flatfile/plugin-markdown-extractor plugin parses Markdown files and extracts tabular data, creating sheets in Flatfile for each table found.
Event Type:
listener.on('file:created')
Supported file types:
.md
When embedding Flatfile, this plugin should be deployed in a server-side listener. Learn more
options.maxTables - default: Infinity - number - (optional)The maxTables parameter allows you to limit the number of tables extracted from a single Markdown file.
options.errorHandling - default: "lenient" - "strict" | "lenient" - (optional)The errorHandling parameter determines how the plugin handles parsing errors. In 'strict' mode, it throws errors, while in 'lenient' mode, it logs warnings and skips problematic tables.
options.debug - default: false - boolean - (optional)The debug parameter enables additional logging for troubleshooting.
Listen for a Markdown file to be uploaded to Flatfile. The platform will then extract the file automatically. Once complete, the file will be ready for import in the Files area.
npm i @flatfile/plugin-markdown-extractor
import { MarkdownExtractor } from "@flatfile/plugin-markdown-extractor";
listener.use(MarkdownExtractor());
In this example, the MarkdownExtractor is initialized with custom options, and then registered as middleware with the Flatfile listener. When a Markdown file is uploaded, the plugin will extract the tabular data and process it using the extractor's parser.
import { MarkdownExtractor } from "@flatfile/plugin-markdown-extractor";
export default async function (listener) {
  // Define optional options for the extractor
  const options = {
    maxTables: 5,
    errorHandling: 'strict',
    debug: true
  };
  // Initialize the Markdown extractor
  const markdownExtractor = MarkdownExtractor(options);
  // Register the extractor as a middleware for the Flatfile listener
  listener.use(markdownExtractor);
  // When a Markdown file is uploaded, the tabular data will be extracted and processed using the extractor's parser.
}
This plugin will create a new sheet for each table found in the Markdown file, with the table headers becoming field names and the rows becoming records.