Skip to content

API

The Argdown repository is a "monorepo" containing a number of different npm packages in its /packages folder. All are published under the @argdown namespace and the MIT license. The two most important packages are @argdown/core and @argdown/node. Both packages have their own extensively commented API documentation. Here is a list of all packages with links to their documentations or README files.

All packages except @argdown/sandbox are written in Typescript and compiled to Javascript.

@argdown/core

API documentation

Contains the Argdown parser and lexer, the basic ArgdownApplication class that manages plugins and the plugins for all central tasks, including the ParserPlugin, ModelPlugin, MapPlugin, HtmlExportPlugin, JSONExportPlugin, DotExportPlugin. This package is used in all tools using the Argdown parser.

@argdown/node

API documentation

Contains the AsynArgdownApplication subclass supporting asynchronous plugin methods. Instantiates this class with all plugins and processes preconfigured and predefined so that you can use it directly without any additional setup. Provides plugins that are specific to Argdown applications that are running in Node.js and not in the browser, for example the LoadFilePlugin and the SaveAsPlugin.

@argdown/image-export

README

Provides png, jpg and webp export plugin. If installed (npm install -g @argdown/image-export) will be automatically used by @argdown/cli and @argdown/pandoc-filter. This is not part of @argdown/node because of its file size and dependency on chrome/chromium, which might cause problems in some linux installations.

@argdown/map-views

README

Contains the VizJs and Dagre map views used in the live previews of @argdown/sandbox and argdown-vscode.

@argdown/web-components

README

Contains web-component used in the markdown-it, remark, marked, gatsby plugins and the pandoc filter. The VSCode extension uses the component in the Markdown preview. The Argdown documentation also uses the web-component for all Argdown snippets.

@argdown/sandbox

README

The browser-based editor. This is a Vue-application depending on @argdown/core and @argdown/map-views.

@argdown/language-server

README

An editor-agnostic language server for the Argdown language with code linter, code assistance and code completion providers. Implements the language server protocol and depends on @argdown/core and @argdown/node.

@argdown/vscode

README

The VS Code extension, depending on @argdown/core, @argdown/node, @argdown/language-server and @argdown/map-views

@argdown/cli

README

The commandline tool, depending on @argdown/node and @argdown/core.

@argdown/pandoc-filter

README

Pandoc filter that allows to generate Argdown-in-Markdown pdfs and html files.

@argdown/markdown-it-plugin

README

Markdown-it plugin that converts Argdown codeblocks to the web-component

@argdown/marked-plugin

README

Marked plugin that converts Argdown codeblocks to the web-component

@argdown/remark-plugin

README

Remark plugin that converts Argdown codeblocks to the web-component

@argdown/highlightjs

README

Highlightjs syntax highlighting support for Argodwn.

@argdown/prism

README

Prism.js syntax highlighting support for Argdown.

@argdown/codemirror-mode

README

Simple Codemirror mode for Argdown syntax highlighting support.

ArgVu

README

A font for Argdown with nice ligatures.