StardustDL.RazorComponents.Markdown
0.0.3.26
See the version list below for details.
dotnet add package StardustDL.RazorComponents.Markdown --version 0.0.3.26
NuGet\Install-Package StardustDL.RazorComponents.Markdown -Version 0.0.3.26
<PackageReference Include="StardustDL.RazorComponents.Markdown" Version="0.0.3.26" />
<PackageVersion Include="StardustDL.RazorComponents.Markdown" Version="0.0.3.26" />
<PackageReference Include="StardustDL.RazorComponents.Markdown" />
paket add StardustDL.RazorComponents.Markdown --version 0.0.3.26
#r "nuget: StardustDL.RazorComponents.Markdown, 0.0.3.26"
#:package StardustDL.RazorComponents.Markdown@0.0.3.26
#addin nuget:?package=StardustDL.RazorComponents.Markdown&version=0.0.3.26
#tool nuget:?package=StardustDL.RazorComponents.Markdown&version=0.0.3.26
RazorComponents.Markdown
Razor component for Markdown rendering.
Online demo:
Features
Most features are based on Markdig.
- Abbreviations
- Auto identifiers
- Citations
- Custom containers
- Definition lists
- Emphasis extras
- Figures
- Footers
- Footnotes
- GridTables
- Mathematics
- Media links
- Youtube
- Bilibili
- Netease music
- Pipe tables
- Task lists
- Diagrams, flowcharts
- Auto links
- Smarty pants
- Emoji
- Code highlighting
Usage
Add the newest package on NuGet.
Visit https://www.nuget.org/packages/StardustDL.RazorComponents.Markdown for all versions.
dotnet add package StardustDL.RazorComponents.Markdown
For latest build, use the following source. https://sparkshine.pkgs.visualstudio.com/StardustDL/_packaging/feed/nuget/v3/index.json
Module Install
This project is built on Modulight.
You can it by following the instructions from Usage and Use Razor Component Modules
builder.AddMarkdownModule();
Original Install
If you don't want to use the module, and want to control all resources manually, then use this.
- Add static assets to
index.html.
<link rel="stylesheet" type="text/css" href="_content/StardustDL.RazorComponents.Markdown/prismjs/themes/prism.css">
<link rel="stylesheet" type="text/css" href="_content/StardustDL.RazorComponents.Markdown/katex/katex.min.css">
<link rel="stylesheet" type="text/css" href="_content/StardustDL.RazorComponents.Markdown/css/markdown.css">
<script src="_content/StardustDL.RazorComponents.Markdown/component-min.js" type="text/javascript"></script>
<script src="_content/StardustDL.RazorComponents.Markdown/mermaid/mermaid.min.js" type="text/javascript"></script>
<script src="_content/StardustDL.RazorComponents.Markdown/prismjs/components/prism-core.min.js"></script>
<script src="_content/StardustDL.RazorComponents.Markdown/prismjs/plugins/autoloader/prism-autoloader.min.js"></script>
- Add services.
using StardustDL.RazorComponents.Markdown;
builder.Services.AddMarkdownComponent();
Use the component
<StardustDL.RazorComponents.Markdown.MarkdownRenderer Value="@MarkdownText" Class="your class" Style="your styles"/>
Configuration
Use IMarkdownComponentService to configure.
Service.EnableCodeHighlight = true;
Service.EnableDiagrams = true;
Service.EnableMathematics = true;
If you want to customize Markdown's parser pipeline, you can inherit inherit MarkdownComponentService and override the method GetPipeline().
If you want to customize the all things, you can inherit inherit MarkdownComponentService and override the method RenderHTML(string).
For custom IMarkdownComponentService, use the codes below to inject services.
// before AddModules
builder.Services.AddSingleton<IMarkdownComponentService, MarkdownComponentService>();
Preview
Here are some screenshots from the demo project.
Header
Code with highlighting
Extensions
Mathematics
Diagram
Dependencies
License
Apache-2.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net5.0
- Markdig (>= 0.24.0)
- Microsoft.AspNetCore.Components.Web (>= 5.0.6)
- Modulight.Modules.Client.RazorComponents (>= 0.0.6)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.