Reusable Avalonia markdown rendering and editing libraries built on Markdig.
- Avalonia control and service layer for rendering Markdown documents.
- Source-aware editing, selection, hit testing, and URI handling.
- Optional plugin packages for alerts, custom containers, definition lists, figures, footers, math, Mermaid diagrams, syntax highlighting, and TextMate integration.
- Standalone sample application that composes the complete Markdown stack.
- Headless rendering and Mermaid test coverage.
| Project | Responsibility |
|---|---|
src/ProMarkdown |
Core controls, parsing, rendering, editing, layout, selection, and theme services. |
src/ProMarkdown.Plugin.Alerts |
Alert block parsing, rendering, and editing. |
src/ProMarkdown.Plugin.CustomContainers |
Generic custom-container support. |
src/ProMarkdown.Plugin.DefinitionLists |
Definition-list parsing, rendering, and editing. |
src/ProMarkdown.Plugin.Figures |
Figure and caption support. |
src/ProMarkdown.Plugin.Footers |
Footer metadata blocks. |
src/ProMarkdown.Plugin.Math |
Inline and block math support. |
src/ProMarkdown.Plugin.Mermaid |
Mermaid diagram rendering. |
src/ProMarkdown.Plugin.SyntaxHighlighting |
Built-in code syntax highlighting. |
src/ProMarkdown.Plugin.TextMate |
TextMate-backed highlighting and editor integration. |
src/ProMarkdown.Sample |
Desktop sample that composes the library and plugins. |
tests/ProMarkdown.Tests |
Headless rendering and Mermaid tests. |
| Package | Version | Downloads | Description |
|---|---|---|---|
ProMarkdown |
Core Avalonia Markdown rendering and editing primitives. | ||
ProMarkdown.Plugin.Alerts |
Alert block parsing, rendering, and editing. | ||
ProMarkdown.Plugin.CustomContainers |
Custom-container parsing, rendering, and editing. | ||
ProMarkdown.Plugin.DefinitionLists |
Definition-list parsing, rendering, and editing. | ||
ProMarkdown.Plugin.Figures |
Figure block parsing, rendering, and editing. | ||
ProMarkdown.Plugin.Footers |
Footer block parsing, rendering, and editing. | ||
ProMarkdown.Plugin.Math |
Inline and block math parsing, rendering, and editing. | ||
ProMarkdown.Plugin.Mermaid |
Mermaid diagram rendering. | ||
ProMarkdown.Plugin.SyntaxHighlighting |
Built-in syntax highlighting for code blocks. | ||
ProMarkdown.Plugin.TextMate |
TextMate-backed highlighting and editor integration. |
- .NET 10 SDK
dotnet restore ProMarkdown.slnx
dotnet build ProMarkdown.slnx
dotnet test --solution ProMarkdown.slnxdotnet run --project src/ProMarkdown.Sample/ProMarkdown.Sample.csprojThe sample provides an editor and preview surface with the plugin ecosystem registered together.
The published documentation is available at wieslawsoltes.github.io/ProMarkdown. The Lunet source lives under site/.
dotnet tool restore
bash ./check-docs.shTo serve it locally:
bash ./serve-docs.shPowerShell equivalents are included for the build, check, and serve commands. Detailed Markdown implementation notes live under docs/.
.github/workflows/build.ymlbuilds, tests, validates docs, and packs the Markdown projects..github/workflows/docs.ymlpublishes the Lunet site..github/workflows/release.ymlvalidates and publishes the ProMarkdown NuGet packages for tagged releases.
MIT. See LICENSE.