30 open-source projects similar to commonmark/commonmark-spec, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Commonmark Spec alternative.
CommonMark is a formal standard specification for Markdown, providing a reference implementation and a set of rules to ensure consistent text rendering across different platforms. It consists of a Markdown parser implementation and a system for generating formal syntax documentation. The project includes a comprehensive conformance test suite with over five hundred embedded examples to verify that other Markdown implementations adhere to the specification. It provides tools to export these test cases in JSON format for use in external verification processes. The system covers document format
This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.
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
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 t
tiny recursive descent expression parser, compiler, and evaluation engine for math expressions
libimobiledevice is a communication library designed to interact with iOS devices using native protocols instead of proprietary software. It provides a set of tools for device management, including firmware recovery, filesystem access, and the creation of native backups and restores. The project implements a property list parser to read and write data across binary, XML, and JSON formats. It enables low-level hardware control, such as triggering recovery modes, modifying system settings, and managing device activation and provisioning via official servers. The library covers several function
libgit2 is a portable, cross-platform C library that provides a programmatic interface for integrating Git version control directly into applications. It serves as a linkable implementation of Git internals, allowing developers to manage repositories and manipulate version control data without requiring a system installation of the Git command line tool. The library functions as an embedded API and object database manager capable of reading and writing commits, trees, blobs, and tags. It includes a network transport client to handle the transfer of repository data over protocols such as SSH a
WAFer is a C language-based software platform for scalable server-side and networking applications. Think node.js for C programmers.
Platform independent Near Field Communication (NFC) library
syn is a Rust syntax tree parser and token stream converter. It serves as a toolkit for procedural macro development, providing a framework to parse Rust source code into structured syntax trees for analysis and transformation. The project enables the manipulation of Rust abstract syntax trees through specialized visitor and folder patterns for traversing and mutating nodes. It provides a bidirectional mapping that allows developers to convert token streams into structured trees and print those trees back into tokens for code generation. The library covers a broad range of syntax analysis ca
Lark is a Python parsing toolkit used to define grammars and convert raw text into annotated parse trees. It serves as an abstract syntax tree generator and a grammar definition language for specifying language rules through terminals and regular expressions. The library provides two primary parsing implementations: an Earley parsing library capable of handling all context-free languages, including those with ambiguity and left-recursion, and a high-performance LALR parsing library designed for deterministic languages with low memory overhead. Beyond core parsing, the toolkit includes capabi
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
CodeMirror is a browser-based code editor framework and modular extension system used to embed full-featured text editors into web pages. It functions as a syntax tree parsing engine and a language server protocol client, enabling structural language analysis and deep integration with external programming language services. The project is distinguished by its modular architecture, which uses a system of extensions and compartments for dynamic reconfiguration at runtime. It supports real-time collaborative editing and state synchronization through an operational transformation framework, allow
Redcarpet is a security-focused Markdown to HTML parser and customizable renderer. It transforms Markdown text into structured HTML output while utilizing a security layer to filter or escape user-provided HTML tags and restrict link protocols to prevent vulnerabilities. The project distinguishes itself through a framework for custom document formatting, allowing the definition of how specific Markdown elements are converted to HTML via callback functions and custom classes. It also functions as a typographic formatter that converts standard punctuation and dashes into professional curly quot
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
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
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
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
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
Frontend Workshop from HTML/CSS/JS to TypeScript/React/Redux
This project serves as a comprehensive reference and directory for lightweight markup languages, providing a centralized resource for learning syntax and discovering software tools. It functions as a foundational guide for authors and developers, offering detailed documentation on how to structure plain text for web and print publishing. The resource distinguishes itself by cataloging a wide range of software applications and editors, allowing users to evaluate tools based on their specific syntax support and functional capabilities. Beyond basic syntax, it covers advanced formatting techniqu
Braft Editor is a React-based rich text editor built on Draft.js that provides a framework for content creation and formatting. It functions as a reusable UI component that allows users to compose formatted documents in a WYSIWYG interface and export the resulting content as HTML strings. The project features built-in localization support for multiple languages, including Chinese, Japanese, and Korean. It provides a modular system for extending editor functionality through plugins, custom toolbar mappings, and specialized media entities. The editor covers a broad range of content capabilitie
This project provides a lightweight markup specification and a plain text formatting standard used to arrange information into structured documents. It serves as a system for converting simple text characters into rich document elements and HTML tags for web display. The project includes a syntax guide and documentation for implementing standardized symbols. These resources cover the rules for creating formatted text and hyperlinks that can be converted into web content. The system covers a broad range of document capabilities, including hierarchical headings, ordered and unordered lists, an
TSDoc is a documentation standard and specification for writing structured comments in TypeScript code. It provides a portable system for defining metadata, tags, and cross-references within source code to ensure consistent parsing and rendering across different tooling. The project includes a doc comment parser that converts comments into a structured syntax tree and a validator that enforces syntax consistency. It allows for the definition of custom documentation tags through external configuration files and supports multiple syntax validation modes to assist with specification compliance.
simple neural network library in ANSI C
ARCHIVED - libbson has moved to https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson