HTML semantics mapped to Avalonia

Native HTML Markup

Use familiar document semantics without putting a browser inside the application.

Explore source
Parent systemHtmlML
StatusPreview
Modules1
RepositoryHtmlML/HtmlML
  1. 01

    30+ HTML-shaped elements

  2. 02

    Native Avalonia control output

  3. 03

    Document, semantic, and media tags

  4. 04

    Extensible element base classes

From intent
to working system.

01

Declare

HTML-shaped tags express document and application structure in XAML.

02

Create

Each element maps to an Avalonia control with normal properties and layout.

03

Compose

Elements participate in native trees, resources, input, and lifecycle.

04

Extend

Applications derive new elements or register domain-specific tags.

Adopt this
capability.

Start with the primary module, then add the related packages only when the application needs those layers. Replace VERSION with the current NuGet version.

01 · Install
Terminal
git clone https://github.com/wieslawsoltes/HtmlML.git
# Add a ProjectReference to src/HtmlML/HtmlML.csproj.
02 · Use · xml
MainWindow.axaml
<html xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<body class="app-body">
<nav><a href="#work">Work</a></nav>
<section class="hero">
<h1>Native Avalonia. Familiar markup.</h1>
<p>No embedded browser required.</p>
</section>
</body>
</html>

Use one layer.
Compose the rest.

Read the module beside the complete system.

The implementation, samples, issues, and release notes stay in the parent repository so module details remain connected to the product architecture.

HtmlML

Search everything.

Loading the index…

move open esc close

Preparing metadata and full-text search…