# remarkjs/react-markdown

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/remarkjs-react-markdown).**

15,779 stars · 923 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/remarkjs/react-markdown
- Homepage: https://remarkjs.github.io/react-markdown/
- awesome-repositories: https://awesome-repositories.com/repository/remarkjs-react-markdown.md

## Topics

`commonmark` `gfm` `markdown` `react` `remark`

## Description

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 and display of raw HTML embedded within markdown strings for use in trusted environments. The pipeline also supports asynchronous plugin processing to fetch or process data during the markdown parsing phase.

## Tags

### User Interface & Experience

- [Markdown Renderers](https://awesome-repositories.com/f/user-interface-experience/data-display-components/markdown-renderers.md) — Converts markdown text into React components for dynamic display within a user interface.
- [Custom Component Injection](https://awesome-repositories.com/f/user-interface-experience/custom-element-renderers/custom-component-injection.md) — Replaces default markdown element tags with custom React components to control styling and behavior. ([source](https://cdn.jsdelivr.net/gh/remarkjs/react-markdown@main/README.md))
- [Markdown Element Overrides](https://awesome-repositories.com/f/user-interface-experience/markdown-element-overrides.md) — Provides capabilities for replacing standard markdown output tags with custom React components.
- [Raw HTML Rendering](https://awesome-repositories.com/f/user-interface-experience/raw-html-rendering.md) — Injects trusted HTML strings directly into the DOM by bypassing default escaping in trusted environments.

### Content Management & Publishing

- [Plugin-Based Syntax Extensions](https://awesome-repositories.com/f/content-management-publishing/content-processing-transformation/content-processing/markup-attribute-processors/plugin-based-syntax-extensions.md) — Provides a plugin system that allows external modules to inject custom parsing rules and extend markdown syntax.
- [Markdown Conversions](https://awesome-repositories.com/f/content-management-publishing/markdown-conversions.md) — Transforms markdown syntax into React components for use as interface elements. ([source](https://cdn.jsdelivr.net/gh/remarkjs/react-markdown@main/README.md))
- [Component Mappings](https://awesome-repositories.com/f/content-management-publishing/markdown-renderers/style-customizers/component-mappings.md) — Mapping standard markdown elements to custom components to control styling and behavior.
- [Asynchronous Processing Pipelines](https://awesome-repositories.com/f/content-management-publishing/content-processing-transformation/markdown-markup-tools/markdown-tools/markdown-renderers/markdown-transformation-pipelines/asynchronous-processing-pipelines.md) — Supports asynchronous data fetching and processing within the markdown transformation pipeline. ([source](https://cdn.jsdelivr.net/gh/remarkjs/react-markdown@main/README.md))
- [Markdown to HTML Converters](https://awesome-repositories.com/f/content-management-publishing/markdown-to-html-converters.md) — Transforms markdown plaintext markup into structured HTML for web display within trusted environments.

### Software Engineering & Architecture

- [React Component Tree Mappings](https://awesome-repositories.com/f/software-engineering-architecture/abstract-syntax-tree-tools/internal-tree-representations/ui-component-model-trees/react-component-tree-mappings.md) — Transforms markdown abstract syntax trees into hierarchical React component structures for dynamic rendering.
- [Unified Plugin Pipelines](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/developer-authoring-interfaces/custom-module-implementations/module-functionality-extenders/plugin-extenders/unified-plugin-pipelines.md) — Utilizes a unified pipeline to chain rehype and remark plugins for custom markdown transformations.
- [Component Generators](https://awesome-repositories.com/f/software-engineering-architecture/recursive-validation-engines/recursive-ast-traversal/component-generators.md) — Traverses the parsed markdown tree to recursively generate matching React components for every node and its children.
- [Markdown Plugin Pipelines](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/plugin-based-architectures/pipeline-plugins/markdown-plugin-pipelines.md) — Implements a configurable chain of plugins for extensible markdown transformations using the unified ecosystem.
- [Asynchronous Tree Processors](https://awesome-repositories.com/f/software-engineering-architecture/asynchronous-tree-processors.md) — Supports awaiting external data or plugins before converting the intermediate representation into the final UI tree.

### Security & Cryptography

- [HTML Content Sanitization](https://awesome-repositories.com/f/security-cryptography/html-content-sanitization.md) — Passes raw HTML through a security filter to remove malicious scripts and prevent cross-site scripting attacks.

### Web Development

- [Markdown](https://awesome-repositories.com/f/web-development/syntax-extensions/markdown.md) — Extends markdown syntax to support additional structural elements like tables, tasklists, and mathematical notation.
- [Markdown Parser Extensions](https://awesome-repositories.com/f/web-development/web-standards/typography-systems/inline-text-styles/markdown-parser-extensions.md) — Provides pluggable components that add custom block and inline parsing logic to the markdown engine. ([source](https://cdn.jsdelivr.net/gh/remarkjs/react-markdown@main/README.md))
