1 unstable release
| 0.1.0 | May 23, 2026 |
|---|
#16 in #soul
6KB
99 lines
soul-blog — minimal blog primitives.
Parses YAML frontmatter blocks delimited by --- lines and renders
the remaining Markdown body to HTML.
Example
use soul_blog::Post;
let raw = "---\ntitle: Hello\nauthor: Soul\n---\n# Heading\n\nbody";
let post: Post = raw.parse().unwrap();
assert_eq!(post.front.title.as_deref(), Some("Hello"));
assert!(post.render_html().contains("<h1>Heading</h1>"));
soul-blog
Minimal blog post primitives for the Soul ecosystem.
- YAML frontmatter parsing (between two
---lines) - Markdown-to-HTML rendering via
pulldown-cmark
Add to your project
[dependencies]
soul-blog = "0.1"
Usage
use soul_blog::Post;
let raw = "---\ntitle: Hello\n---\n# Heading\n\nbody";
let post: Post = raw.parse().unwrap();
println!("{}", post.render_html());
License
MIT
Dependencies
~2.8–4MB
~87K SLoC