awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
xoofx avatar

xoofx/markdig

0
View on GitHub↗
5,127 نجوم·505 تفرعات·C#·bsd-2-clause·5 مشاهدات

Markdig

Markdig is a markdown parser library that converts text into structured HTML, plain text, or other formats using a configurable pipeline. It functions as a CommonMark compliant parser and an abstract syntax tree generator that transforms markdown into a hierarchical tree of block and inline nodes with precise source location mapping.

The project is distinguished by a decoupled renderer architecture that separates parsing logic from output generation, enabling the transformation of the syntax tree into non-HTML formats such as LaTeX or XAML. It also serves as a lossless markdown processor by tracking non-semantic whitespace and trivia, which allows documents to be re-rendered without losing original formatting.

The library covers a broad range of capabilities including the ability to extend markdown syntax through pluggable parser extensions and the manipulation of the abstract syntax tree for document analysis. It supports advanced elements such as tables, mathematics, and footnotes, and includes features for international text handling, typography enhancements, and YAML front matter extraction.

Rendered output can be written directly to a text stream to reduce memory overhead for large documents.

Features

  • Markdown to HTML Converters - Transforms Markdown plaintext markup into structured HTML for web display.
  • CommonMark Compliant Parsers - Adheres to the CommonMark standard to ensure consistent processing of headings, lists, and links.
  • Markdown Abstract Syntax Trees - Generates an abstract syntax tree with precise source locations to power external analysis tools and highlighters.
  • Tree-to-Text Serializers - Implements a mechanism to serialize the abstract syntax tree back into various text formats.
  • Markdown Parsers - Supports extending standard markdown syntax through a pluggable pipeline of custom block and inline parsers.
  • Custom Format Renderers - Transforms parsed markdown into alternative output formats such as LaTeX or XAML.
  • Markdown Parsing Pipelines - Converts markdown text into structured HTML or other formats using a configurable pipeline of extensions.
  • Markdown Renderers - Provides a flexible rendering system to transform parsed markdown into multiple target formats.
  • Non-HTML Renderers - Enables transformation of markdown into alternative formats like LaTeX and XAML via a decoupled architecture.
  • Markdown to Plain Text Converters - Strips all formatting and HTML tags from a document to produce a clean, text-only version of content.
  • Trivia Tracking - Ensures lossless processing by tracking whitespace and trivia, allowing the source to be re-rendered exactly.
  • Source Text Mapping - Maps every node in the parsed syntax tree to its precise character offsets in the source text.
  • AST Node Location Mapping - Maps every node in the parsed syntax tree back to its exact character offsets and line positions.
  • Abstract Syntax Tree Parsing - Provides the ability to parse markdown into a structured abstract syntax tree for further analysis and rendering.
  • Parser Rule Extensions - Provides a pluggable system for adding custom block and inline parsing rules to the markdown processor.
  • Markdown Block Formatting - Produces structured components such as blockquotes and thematic breaks based on markdown markers.
  • Text Formatting Tools - Applies bold and italic styling to text using standard markdown emphasis markers.
  • Markdown - Supports custom markers and structural elements through a pluggable processing pipeline.
  • Unordered Lists - Generates structured ordered and unordered lists, including support for nested items.
  • Markdown Parser Extensions - Supports the registration of custom block and inline parsers to expand supported markdown syntax.
  • Markdown Processors - Acts as a lossless processor by tracking non-semantic whitespace and trivia for exact re-rendering.
  • Technical Content Renderers - Provides rendering for advanced technical elements including mathematics, tables, and footnotes.
  • Document Metadata Extraction - Extracts YAML front matter and manages pragma lines to enrich document metadata.
  • Code Display & Snippets - Supports the rendering of inline and block code snippets with language identifiers.
  • Plain Text Converters - Provides the ability to strip all formatting and tags to output plain-text content.
  • Markdown Roundtrips - Parses trivia characters like whitespace to allow documents to be modified and rendered without losing original formatting.
  • Parsing Rule Configurations - Allows users to toggle specific syntax extensions and parsing rules through a configuration pipeline.
  • Format-Preserving Printing - Tracks non-semantic elements and whitespace during parsing to ensure the document can be re-rendered exactly.
  • Stream-Based Rendering - Writes rendered content directly to a text stream to reduce memory overhead for large documents.
  • International Markdown Formatting - Supports right-to-left text layouts and applies specialized emphasis delimiter rules for CJK languages.
  • Character-Level Parser Entry Points - Allows registering pluggable entry points at the character level to add parsing logic for new syntax elements.
  • Logic-Rendering Decouplers - Separates the markdown parsing logic from the rendering stage to allow for multiple output formats.
  • Two-Stage Parsing - Utilizes a two-stage parsing process that separates block-level structure scanning from inline value extraction.
  • Document Tree Traversers - Implements depth-first search traversal of the document tree for analysis and modification.
  • Syntax Tree Construction - Provides the ability to traverse and programmatically modify the syntax tree before rendering.
  • Markdown AST Manipulation - Performs structural changes to the document tree while preserving parent-child relationships.
  • Streaming Rendering - Writes converted markdown content directly to a text stream to minimize memory usage for large documents.

سجل النجوم

مخطط تاريخ النجوم لـ xoofx/markdigمخطط تاريخ النجوم لـ xoofx/markdig

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

الأسئلة الشائعة

ما هي وظيفة xoofx/markdig؟

Markdig is a markdown parser library that converts text into structured HTML, plain text, or other formats using a configurable pipeline. It functions as a CommonMark compliant parser and an abstract syntax tree generator that transforms markdown into a hierarchical tree of block and inline nodes with precise source location mapping.

ما هي الميزات الرئيسية لـ xoofx/markdig؟

الميزات الرئيسية لـ xoofx/markdig هي: Markdown to HTML Converters, CommonMark Compliant Parsers, Markdown Abstract Syntax Trees, Tree-to-Text Serializers, Markdown Parsers, Custom Format Renderers, Markdown Parsing Pipelines, Markdown Renderers.

ما هي البدائل مفتوحة المصدر لـ xoofx/markdig؟

تشمل البدائل مفتوحة المصدر لـ xoofx/markdig: lunet-io/markdig — Markdig is a high-performance Markdown processor for .NET applications that converts Markdown text into HTML or other… commonmark/commonmark.js — Commonmark.js is a library designed to parse and render text formatted according to the CommonMark specification. It… russross/blackfriday — Blackfriday is a Go library for parsing and converting Markdown text into HTML, LaTeX, and other structured formats.… remarkjs/remark — Remark is a markdown processor and transformer that converts markdown text into a structured JSON abstract syntax tree… jonschlinkert/remarkable — Remarkable is an extensible Markdown parser library that implements the CommonMark specification and supports GitHub… wooorm/remark — Remark is a markdown processor that parses markdown text into a structured JSON abstract syntax tree for programmatic…

بدائل مفتوحة المصدر لـ Markdig

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع Markdig.
  • lunet-io/markdigالصورة الرمزية لـ lunet-io

    lunet-io/markdig

    5,257عرض على GitHub↗

    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

    C#
    عرض على GitHub↗5,257
  • commonmark/commonmark.jsالصورة الرمزية لـ commonmark

    commonmark/commonmark.js

    1,559عرض على GitHub↗

    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,

    JavaScript
    عرض على GitHub↗1,559
  • russross/blackfridayالصورة الرمزية لـ russross

    russross/blackfriday

    5,614عرض على GitHub↗

    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

    Go
    عرض على GitHub↗5,614
  • remarkjs/remarkالصورة الرمزية لـ remarkjs

    remarkjs/remark

    8,911عرض على GitHub↗

    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

    JavaScript
    عرض على GitHub↗8,911
  • عرض جميع البدائل الـ 30 لـ Markdig→