Streaming rendering
startStreaming() accepts an LLM token stream. Incremental scanning parses only new content, so total rendering work grows linearly with final length instead of reparsing the entire document for every chunk.
import SwiftUI
import swift_markdown_kit
struct MarkdownScreen: View {
var body: some View {
MarkdownRenderView(markdown: """
# Hello
Inline math: $E = mc^2$
```swift
print("Hello")
```
""")
}
}Inline math: E = mc2
print("Hello")The right pane previews the rendered Markdown. Refer to the demo project for actual device and simulator output.
startStreaming() accepts an LLM token stream. Incremental scanning parses only new content, so total rendering work grows linearly with final length instead of reparsing the entire document for every chunk.
MarkdownChatRenderView renders a full conversation in one WKWebView and updates only the current message while streaming—not one WebView per message.
Start with the built-in .system or .github preset, then override colors, corner radii, and heading sizes by token. Changes apply at runtime without repackaging the framework.
Declaratively register inline extensions such as @mention, $AAPL, and [[Wikilink]]. Matches emit the name and captured value as events and use the same theme-token system.
WHAT YOU GET
Each item below describes behavior that is already implemented.
Pricing, license scope, refunds, and common questions are covered on the pricing page. Contact us with specific integration questions.