Huml.Net
A full-featured HUML v0.1/v0.2 parser, serialiser, and deserialiser for .NET — with a
System.Text.Json-style API and zero runtime dependencies.
dotnet add package Huml.Net
using Huml.Net;
var config = HumlSerializer.Deserialize<ServerConfig>("""
%HUML v0.2.0
Host: "localhost"
Port: 8080
""");
Where to next
- New here? Start with the Getting Started tutorial.
- Need to do a specific thing? Browse the how-to guides.
- Prefer runnable code? Every feature has a worked example in the examples repository.
- Looking up an API? See the API reference: HumlSerializer.
- Want to understand the design? Read the explanation pages.
- Stuck, or have an idea? Ask in GitHub Discussions.
Why Huml.Net
- Familiar API — if you know
JsonSerializer, you knowHumlSerializer. - Spec-compliant — validated against the shared
huml-lang/testsfixture suite for HUML v0.1 and v0.2. - No dependencies — nothing pulled into your app's dependency graph.
- Multi-target —
netstandard2.1,.NET 8,.NET 9,.NET 10. - AOT/trim-aware — annotated for trimming, with a source-generator seam for reflection-free metadata.