30 open-source projects similar to wooorm/remark, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Remark alternative.
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
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
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
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
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
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
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
Markdoc is a documentation content framework that extends standard Markdown with custom tags, typed schemas, and reusable components, parsing content into an abstract syntax tree and rendering it as React elements or HTML. It provides a structured authoring system where documents are processed through an AST-based pipeline, enabling validation, transformation, and flexible output generation. The framework distinguishes itself through a schema-driven validation pipeline that checks document structure and attribute values against defined rules, and a pluggable renderer architecture that accepts
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
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
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
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
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
Showdown is a JavaScript library designed to convert Markdown syntax into HTML markup. It functions as a processor for both client-side and server-side environments, transforming plain text into web-ready code suitable for rendering in browsers and digital applications. The project distinguishes itself through a plugin-driven architecture that allows for the injection of custom parsing rules. This extensibility enables developers to modify the standard conversion pipeline, supporting unique syntax patterns or specialized formatting requirements beyond the default implementation. Users can ma
Racket is a general-purpose, multi-paradigm programming language in the Lisp family designed for language creation. It functions as a language workbench, providing a platform for designing and implementing custom programming languages through a flexible system of macros and modules. The system distinguishes itself by offering a comprehensive suite for semantics engineering, allowing for the construction of specialized language subsets and educational layers. It includes tools for custom language design, such as lexer and parser generation, as well as the ability to define module expansion rul
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.
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
ESTree is a formal schema and set of object interfaces used to represent JavaScript source code as a standardized abstract syntax tree. It serves as a common tree format and parser standard to ensure interoperability between different JavaScript parsers and transformation tools. The specification provides a consistent way to model language constructs, including statements, expressions, and module declarations. It includes detailed representations for modern language features such as classes, private identifiers, and short-circuiting logic like nullish coalescing and optional chaining. The pr
GritQL is an AST-based code transformation engine and structural search tool. It uses a declarative query language to identify and rewrite source code patterns across multiple programming languages by matching abstract syntax tree nodes rather than literal text. The system functions as an automated refactoring framework for large-scale migrations and API updates. It distinguishes itself by utilizing sequential transformation pipelines and reusable blueprints that can be synced between local environments and remote repositories. The tool covers a broad range of capabilities including static a
wechat-format is a tool designed to convert Markdown text into specialized HTML compatible with the WeChat official account editor. It functions as a content formatter and converter that transforms Markdown into stylized HTML layouts to maintain consistent visual structures when content is pasted into the publishing platform. The project focuses on bypassing outgoing link restrictions by converting external hyperlinks into numerical footnotes and appending a full citation list to the end of the document. It preserves the appearance of technical content by transforming code blocks and lists in
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
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.
Superpowers is a browser-based game development engine and collaborative integrated development environment. It provides a unified workspace for building two-dimensional interactive experiences, allowing users to manage code, assets, and scene logic directly within a web browser without the need for local compilers or heavy desktop software. The platform distinguishes itself through a modular, component-based scripting architecture where game objects are defined by attached logic and visual properties. It supports real-time synchronization, enabling multiple developers to work on the same pro
Include What You Use is a C++ include optimizer and header dependency analyzer. It identifies unused or missing header includes in source files to reduce project bloat and improve compilation performance. The tool performs static analysis using a Clang-based abstract syntax tree to map symbol usage and track preprocessor effects across different build configurations. It can automatically rewrite source files by inserting or deleting preprocessor directives based on the calculated dependency graph. The system integrates with compilation databases to determine the exact compiler flags used for
Marksman is a Language Server Protocol implementation for Markdown that provides advanced editor features including autocomplete, go-to-definition, and hover support for markdown files. It serves as an analysis engine to manage documentation and knowledge bases through automated link validation and consistent cross-referencing across multiple documents. The project enables the navigation of complex networks of wiki-style links and headings. It supports content refactoring, allowing users to rename headings and update internal references across multiple files to maintain document integrity dur
Zola is a static site generator that compiles Markdown and templates into a standalone website. It is distributed as a single binary, removing the need for external runtimes or package managers to build the final site. The project includes a built-in Sass compiler to transform styles into compressed CSS and a dedicated Markdown rendering engine that supports task lists and footnotes. It also features a client-side search indexer, enabling full-text site search without a backend server, and a multilingual content manager for organizing translated content. Additional capabilities cover asset o
Isso is a self-hosted commenting system that provides a server and client-side script for adding interactive discussion threads to websites. It functions as an independent platform for managing site-wide comment sections and user profiles on private infrastructure, utilizing a JSON API and a Markdown rendering engine to handle user-generated content. The system is designed to support multi-site comment management, allowing a single server installation to serve independent threads for multiple different domains. It includes a dedicated moderation tool featuring signed URLs and an administrativ
SVGR is a tool that transforms static SVG files into reusable React components for direct rendering within user interface trees. It functions as an AST-based code transformer and build-time asset pipeline, parsing SVG XML into an abstract syntax tree to modify elements before generating JavaScript source code. The project integrates an external optimization engine to strip redundant metadata and minify attributes, ensuring vector images are flexible and easy to style. It uses recursive tree traversal to apply these transformations to all nested graphic elements and employs attribute mapping t
This project is an interactive tutorial generator and static site generator that transforms source documents, such as Markdown and Google Docs, into structured instructional guides. It functions as a documentation conversion tool that compiles source content into static HTML assets and metadata for distribution to public or private audiences. The system utilizes a custom element UI framework to embed interactive instructional components using standard HTML custom elements, removing the need for external JavaScript frameworks. It supports multi-format content export, allowing a single source o
Prompt-kit is a React-based toolkit and component library specialized for building conversational interfaces for large language models. It provides a framework of reusable UI elements designed to handle the specific requirements of generative AI, such as streaming text responses, rendering model reasoning, and managing complex model outputs. The toolkit distinguishes itself through specialized visualization capabilities, including the rendering of chain-of-thought reasoning traces and the display of external tool interactions. It also features an interactive preview system that renders genera