Crate quillmark_core

Crate quillmark_core 

Source
Expand description

§Quillmark Core Overview

Core types and functionality for the Quillmark template-first Markdown rendering system.

§Features

This crate provides the foundational types and traits for Quillmark:

  • Parsing: YAML frontmatter extraction with Extended YAML Metadata Standard support
  • Templating: MiniJinja-based template composition with stable filter API
  • Template model: Quill type for managing template bundles with in-memory file system
  • Backend trait: Extensible interface for implementing output format backends
  • Error handling: Structured diagnostics with source location tracking
  • Utilities: TOML⇄YAML conversion helpers

§Quick Start

use quillmark_core::{ParsedDocument, Quill};

// Parse markdown with frontmatter
let markdown = "---\ntitle: Example\n---\n\n# Content";
let doc = ParsedDocument::from_markdown(markdown);

// Load a quill template
let quill = Quill::from_path("path/to/quill").unwrap();

§Architecture

The crate is organized into modules:

  • parse: Markdown parsing with YAML frontmatter support
  • templating: Template composition using MiniJinja
  • backend: Backend trait for output format implementations
  • error: Structured error handling and diagnostics
  • types: Core rendering types (OutputFormat, Artifact, RenderOptions)
  • quill: Quill template bundle and related types

§Further Reading

Re-exports§

pub use parse::ParsedDocument;
pub use parse::BODY_FIELD;
pub use templating::Glue;
pub use templating::TemplateError;
pub use backend::Backend;
pub use error::Diagnostic;
pub use error::Location;
pub use error::ParseError;
pub use error::RenderError;
pub use error::RenderResult;
pub use error::SerializableDiagnostic;
pub use error::Severity;
pub use types::Artifact;
pub use types::OutputFormat;
pub use types::RenderOptions;
pub use quill::FileTreeNode;
pub use quill::Quill;
pub use quill::QuillIgnore;
pub use value::QuillValue;

Modules§

backend
Backend Trait
error
Error Handling
parse
Parsing Module
quill
Quill template bundle types and implementations.
schema
Schema validation and utilities for Quillmark.
templating
Templating Module
types
Core types for rendering and output formats.
value
Value type for unified representation of TOML/YAML/JSON values.