30 open-source projects similar to xoofx/markdig, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Markdig alternative.
Markdig is a high-performance Markdown processor for .NET applications that converts Markdown text into HTML or other target formats. It is a CommonMark compliant parser and extensible engine that can transform Markdown into a searchable and manipulatable abstract syntax tree. The library provides a framework for adding custom syntax and rendering logic through a modular pipeline of parsers and renderers. It supports native ahead-of-time compilation and trimming to minimize binary size. Capabilities include the generation of structured HTML with custom attributes and styling, the extraction
Commonmark.js is a library designed to parse and render text formatted according to the CommonMark specification. It functions as a document processing pipeline that converts plain text into structured HTML or an abstract syntax tree, enabling developers to programmatically inspect, modify, and transform document elements. The library distinguishes itself through its strict adherence to standardized parsing rules, ensuring consistent and predictable output across different software environments. It provides a robust framework for document tree manipulation, allowing users to traverse, insert,
Blackfriday is a Go library for parsing and converting Markdown text into HTML, LaTeX, and other structured formats. It functions as an extensible Markdown processor that transforms syntax into target markup languages. The project is distinguished by its pluggable rendering architecture, which allows for the production of diverse output targets such as Slack message styles, Confluence Wiki Markup, and GitHub Flavored Markdown. It supports custom syntax extensions including definition lists, footnotes, autolinks, and strikethroughs. The processor includes utilities for generating automatic ta
Remark is a markdown processor and transformer that converts markdown text into a structured JSON abstract syntax tree for programmatic manipulation. It functions as a plugin-based tool within the unified ecosystem, allowing users to parse, transform, and stringify markdown content. The project is distinguished by its extensibility through a plugin system that supports custom markdown syntax extensions, the introduction of new markup elements, and the definition of custom processing logic. This framework enables the modification of content through a visitor-pattern traversal of the syntax tre
Remarkable is an extensible Markdown parser library that implements the CommonMark specification and supports GitHub Flavored Markdown through configurable rule presets. Its core architecture separates parsing into distinct inline and block rule pipelines, enabling targeted customization of text-level and structural syntax while maintaining consistent behavior across standard Markdown features. The parser is built around a plugin-based rule system where individual syntax rules can be toggled, extended, or replaced by external plugins. A preset configuration system allows users to switch betwe
Remark is a markdown processor that parses markdown text into a structured JSON abstract syntax tree for programmatic analysis and transformation. It functions as a markdown AST parser and processor, utilizing a plugin framework to manage extensible syntax and transformation rules. The project enables custom markdown syntax extensions and content transformation through a plugin system, allowing for the addition of non-standard markup and metadata. It also includes a markdown linter to identify style inconsistencies and ensure adherence to writing standards. The toolset covers markdown docume
Goldmark is a Markdown parser and renderer written in Go that converts Markdown text into HTML or XHTML. It implements the CommonMark specification to ensure consistent parsing behavior. The project utilizes a modular extension registry, allowing for the addition of custom syntax such as tables, task lists, and footnotes. It also includes specialized support for CJK languages to handle specific line-breaking and emphasis rules for Chinese, Japanese, and Korean characters. The library parses text into an abstract syntax tree for programmatic document analysis and modification. Its capabilitie
pulldown-cmark is a pull-parsing library that transforms Markdown text into a stream of events based on the CommonMark specification. It functions as an event-based processor that represents document structure as an iterator of events rather than a concrete syntax tree, serving as both a parser and a renderer to convert Markdown into HTML strings. The library is designed for memory efficiency by processing text as a stream to minimize resource usage. It supports programmatic document transformation, allowing users to map or filter the event stream before final rendering. The project includes
Python-Markdown is a library that converts Markdown text into HTML or XHTML documents. It functions as a Unicode text processor, supporting all Unicode-based languages and bi-directional text to ensure global compatibility. The project is an extensible markdown processor that allows developers to add custom syntax and formatting rules through a plugin architecture. This system enables the registration of new parsing rules, the modification of parser behavior, and the implementation of custom document syntax such as tables and footnotes without altering the core source code. The tool provides
markdown-it is a token-based Markdown compiler and CommonMark-compliant parser that converts structured plaintext markup into HTML. It functions as an extensible markup processor designed to transform text into browser-ready content while managing security and preventing cross-site scripting. The project is distinguished by a modular plugin system that allows for the extension of parsing capabilities and the addition of custom syntax, such as footnotes, tables, or emojis. It utilizes a two-stage tokenization process to break documents into structural tokens before rendering them into final HT
This project is a Python library and command-line tool designed to convert Markdown text and files into structured HTML fragments. It functions as a Markdown-to-HTML converter and parser that transforms piped text or source files into web-ready documents. The project is an extensible text processor featuring a pluggable API for defining custom inline and block syntax. This modular framework allows for the registration of specialized syntax extensions, such as tables and footnotes, and provides a system for managing runtime configuration settings. The conversion process covers multilingual te
Vditor is a browser-based Markdown editor and rendering engine that supports multiple editing interfaces, including a visual rich-text experience, instant rendering, and a traditional side-by-side split-view preview. It serves as an authoring tool for technical documentation and a component for web-based editor integration. The project is distinguished by its support for complex technical content, utilizing specialized rendering for mathematical formulas, flowcharts, sequence diagrams, and mind maps. It also functions as a collaborative document review tool, enabling users to attach anchored
react-markdown is a React markdown renderer that transforms markdown strings into React elements for display in a user interface. It functions as a plugin-based markdown parser and component library that converts raw text into safe interface elements. The project utilizes a plugin system to extend markdown syntax, allowing support for tables, tasklists, and mathematical notation. It enables custom component mapping, which replaces standard markdown output with specialized components to control the visual styling and behavior of specific content blocks. The renderer supports the processing an
markdown-js is a JavaScript markdown parser and converter that transforms markdown text into HTML output. It functions as both a library and a command line interface tool for converting documents. The project is centered on an abstract syntax tree representation, allowing markdown to be parsed into a structured tree for programmatic inspection and modification before the final rendering process. This intermediate representation enables custom markup processing and document transformations. The toolset covers programmatic document parsing, static site generation, and CLI-based file processing
Cherry Markdown is a web-based Markdown editor and parsing engine that converts markup text into sanitized HTML with a real-time synchronized preview pane. It functions as a rich text interface and WYSIWYG tool, providing a system for transforming markup strings into HTML documents or portable formats. The project distinguishes itself through high-performance rendering and a flexible extensibility model. It uses virtual DOM diffing and partial rendering to maintain responsiveness in large documents, and it allows for the creation of custom parsing rules and specialized HTML components via a p
Parsedown is a PHP library that converts Markdown text and common extensions into structured HTML output for web browsers. It functions as a Markdown to HTML converter that processes both block-level and inline elements to generate valid web content. The library includes a PHP HTML sanitizer designed to escape HTML and scripting vectors. This security layer provides input sanitization to prevent attacks when processing untrusted user-generated content.
Vue-markdown is a rendering library and component suite designed to transform raw markdown text into structured HTML for use within Vue applications. It functions as a parser that converts text into an intermediate tree structure, allowing for the integration of dynamic content and the application of custom formatting rules during the conversion process. The library distinguishes itself through its component-based architecture, which enables the direct injection of framework-specific components into rendered documents. It provides extensive lifecycle hooks that allow developers to monitor the
Unified is a syntax tree processing engine and content ecosystem designed to parse, transform, and serialize text content. It functions as a plugin-based content pipeline that converts raw text into structured abstract syntax trees using plain JavaScript objects for programmatic inspection and modification. The project distinguishes itself through a modular architecture that enables cross-ecosystem translation, allowing syntax trees to be converted between different specifications such as HTML and Markdown. It utilizes a system of immutable processor cloning and shared state containers, ensur
Acorn is a JavaScript parser that converts source text into a structured abstract syntax tree. It follows the ESTree specification to produce a standardized JSON tree format, enabling consistent analysis of code structure and language versions. The project features a plugin-based grammar extension system that allows the base parser to be extended with custom rules for experimental or non-standard language features. It also includes syntax error recovery, which inserts placeholder nodes into the tree when encountering invalid code to allow parsing to continue. The toolset covers static analys
A responsive Material Design theme for static blogs built with the Hexo framework. It functions as a comprehensive layout system that transforms markdown files into styled HTML pages, providing a specialized environment for technical documentation and personal blogging. The theme is characterized by a data-driven approach to content visualization, using radar charts for categories and word clouds for tags to represent post metadata. It further distinguishes its organization by utilizing a chronological timeline architecture for blog archives. The project covers a wide range of technical publ
This project is a Markdown static site generator and documentation server that converts files and folder structures into responsive websites. It functions as a Confluence documentation publisher, enabling the direct upload and synchronization of processed Markdown content to enterprise knowledge base servers. The system distinguishes itself through its technical rendering capabilities, transforming Mermaid syntax into visual diagrams and TeX expressions into mathematical formulas. It supports multilingual documentation by creating localized versions of a site with dedicated navigation structu
This library provides a component-based solution for parsing and rendering markdown content directly within Angular applications. It functions as a bridge between raw markdown text and formatted HTML, enabling the display of dynamic content, remote documentation, and technical guides within a framework-native environment. The library distinguishes itself through a modular pipeline that allows for deep customization of the rendering process. Developers can override default HTML generation for specific elements, integrate third-party plugins for advanced syntax support, and manage the parsing l
This project is a formal markdown specification standard that provides a detailed markup syntax definition and a definitive set of rules for parsing plain text into consistent HTML output. It establishes a standardized grammar for structural blocks and inline elements to ensure uniform rendering across different software implementations. The specification is supported by a parser conformance suite and a reference implementation in C and JavaScript to verify that implementations adhere to the standard. It includes a system for implementation verification that compares transformed input strings
This project is a web-based markdown editing component designed for integration into Vue applications. It provides a text input interface for creating and modifying markdown content, featuring real-time rendering and a live preview that transforms source text into formatted HTML. The editor is built on a modular framework that supports custom plugins and visual themes, allowing developers to extend core functionality and align the workspace appearance with host application designs. It utilizes a standardized hook architecture to enable these extensions, ensuring that the editing environment c
Mistune is a pure Python implementation of a Markdown to HTML parser. It functions as a library that converts Markdown formatted text into HTML markup for rendering in web browsers. The project is designed as an extensible Markdown renderer, utilizing a modular system that allows for the customization of how Markdown elements are transformed into HTML via a pluggable renderer. Its capabilities cover a range of conversion tasks, including static site generation, dynamic content rendering, and the creation of custom documentation workflows.
markdown-nice is a web-based markdown editor and renderer designed to transform raw markdown text into formatted HTML. It functions as a CSS stylizer that applies custom themes to content to improve its visual presentation for publishing platforms. The tool focuses on blog post formatting and markdown content styling, allowing users to define the layout and typography of technical articles. It supports the rendering of specialized syntax, including mathematical formulas and footnotes. The editor includes capabilities for persisting user state and style settings in the browser. It utilizes a
N-blog is a full-stack JavaScript blogging platform and content management system built with Node.js. It functions as a server-side rendered web application that renders markdown source text into HTML for publishing and displaying articles. The system includes a markdown blogging engine that enables the creation and management of posts and user comments. It features a integrated user authentication system that handles account registration, secure sign-in, and session management to protect private routes. The project covers broad capability areas including request routing and middleware pipel
Assemble is a static site generator and build pipeline system that compiles markdown, templates, and data into static HTML files. It functions as a markdown-to-HTML converter and a data format transformer capable of moving content between JSON, YAML, XML, PLIST, and CSV formats. The project features a pipeline-based build process where users can define ordered sequences of data transformations and file processing steps. It includes project scaffolding tools to bootstrap directory structures and configuration files from predefined boilerplates. The system manages content through collection-ba
Grip is a GitHub API rendering tool and markdown previewer that transforms local markdown files into styled HTML. It functions as a converter for processing markdown text into HTML files and as a local server for verifying content appearance before it is committed to a repository. The project ensures visual parity with GitHub by using the GitHub API to render content, applying the specific styles used in repository comments, issues, and pull requests. It includes a mechanism to embed external CSS directly into generated HTML files for portable offline distribution and utilizes disk-based asse
This project is a static site generator and documentation builder designed to transform markdown files into styled HTML documents. It functions as a programmatic conversion engine, allowing developers to integrate markdown processing and layout rendering directly into automated build scripts and content workflows. The tool distinguishes itself through a pipeline-oriented architecture that supports custom plugin integration and metadata-driven template injection. Users can define global or per-file metadata to dynamically populate page content, while the system’s template-based generation allo