# 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" }, }