# Example: a concrete blog post metadata file.
#
# Uses make_post (Layer 2 overrides) — only provide fields that differ
# from defaults. The factory merges site defaults (Layer 1) then
# applies PostMetadata as a contract for type checking.
#
# Validate: nickel export example_post.ncl --format json | jq .
# Should produce a complete record with all defaults filled in.

let schema = import "post_metadata.ncl" in

schema.make_post {
  title        = "Modern Rust Web Development in 2024",
  slug         = "modern-rust-web-development-in-2024",
  date         = "2024-01-15",
  category     = "rust",
  subtitle     = "A comprehensive guide to building scalable web applications",
  excerpt      = "Explore the latest trends in Rust web development.",
  content_file = "rust-web-development-2024.md",
  read_time    = "8 min read",
  featured     = true,
  tags         = ["rust", "web-development", "leptos", "axum"],
  translations = { es = "desarrollo-web-rust-2024" },
}
