StardustDL.RazorComponents.Markdown
0.0.3.25
See the version list below for details.
dotnet add package StardustDL.RazorComponents.Markdown --version 0.0.3.25
NuGet\Install-Package StardustDL.RazorComponents.Markdown -Version 0.0.3.25
<PackageReference Include="StardustDL.RazorComponents.Markdown" Version="0.0.3.25" />
paket add StardustDL.RazorComponents.Markdown --version 0.0.3.25
#r "nuget: StardustDL.RazorComponents.Markdown, 0.0.3.25"
// Install StardustDL.RazorComponents.Markdown as a Cake Addin #addin nuget:?package=StardustDL.RazorComponents.Markdown&version=0.0.3.25 // Install StardustDL.RazorComponents.Markdown as a Cake Tool #tool nuget:?package=StardustDL.RazorComponents.Markdown&version=0.0.3.25
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. |
-
net5.0
- Markdig (>= 0.23.0)
- Microsoft.AspNetCore.Components.Web (>= 5.0.3)
- Modulight.Modules.Client.RazorComponents (>= 0.0.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.