A multi-platform SDK for rendering Markdown as native text and editing rich text with Markdown output. Ships as a React Native library with iOS, Android, macOS, and Web support, plus standalone native SDKs for iOS (Swift) and Android (Kotlin).
- Native text rendering — High-performance Markdown rendering built on platform text APIs (no WebView)
- Rich text input — Text input with Markdown output, inline formatting, headings, lists, links, and mentions
- Cross-platform — Consistent API across React Native (TypeScript), iOS (Swift), and Android (Kotlin)
- CommonMark & GFM — Full CommonMark compliance with GitHub Flavored Markdown extensions (tables, task lists, strikethrough)
- LaTeX math — Block and inline math rendering powered by RaTeX
- Markdown streaming — Real-time streaming support for AI/LLM chat interfaces
- Code syntax highlighting — Native syntax highlighting powered by tree-sitter
- Accessibility — VoiceOver on iOS, TalkBack on Android, semantic HTML on web
See the feature comparison table for a detailed breakdown of supported features per platform.
| Platform | Package | README |
|---|---|---|
| React Native | React Native | |
| Android | Android | |
| iOS | iOS |
yarn add react-native-enriched-markdownimport { EnrichedMarkdownText } from 'react-native-enriched-markdown';
import { Linking } from 'react-native';
<EnrichedMarkdownText
markdown={"# Hello\n\nThis is **enriched** [markdown](https://commonmark.org)."}
onLinkPress={({ url }) => Linking.openURL(url)}
/>dependencies {
implementation("com.swmansion.enriched.markdown:compose:0.1.0")
}import com.swmansion.enriched.markdown.compose.EnrichedMarkdownText
import com.swmansion.enriched.markdown.compose.MarkdownTheme
MarkdownTheme {
EnrichedMarkdownText(
markdown = "# Hello\n\nThis is **enriched** [markdown](https://commonmark.org).",
onLinkPress = { url -> /* open url */ },
)
}dependencies: [
.package(
url: "https://github.com/software-mansion-labs/enriched-markdown-ios.git",
from: "0.1.0"
),
]import EnrichedMarkdown
import SwiftUI
EnrichedMarkdownText("# Hello\n\nThis is **enriched** [markdown](https://commonmark.org).")
.onLinkPress { url in
UIApplication.shared.open(url)
}See the contributing guide to learn how to contribute to the repository and the development workflow.
Enriched Markdown is licensed under The MIT License.
Built by Software Mansion.