Copperlace Documentation
Copperlace turns named rules into varied text or structured JSON. Start with a
small configuration, render its origin rule, then use the reference pages when
you need a particular feature.
Start here
-
Getting started walks through a first render, reusable choices, bindings, and structured output.
-
Command-line guide covers every CLI command and option, stdin, multiple renders, and exit behavior.
-
Examples provides complete configurations you can run and adapt.
Learn the language
-
Capabilities explains rules, choices, bindings, context, iteration, and recursion.
-
Configuration reference specifies HOCON values and template syntax, including weighted choices and structured loops.
-
Processor reference lists every builtin processor with input and output examples.
-
Structured output explains object-valued rules, JSON, and wrapper APIs.
-
Troubleshooting maps common errors to fixes.
Integrate and release
-
Errors and API behavior documents Rust entry points, context lifetime, and render errors.
-
Packaging and language wrappers covers Rust, C, Python, Java, JS/TS WebAssembly, and Elixir artifacts and APIs.
-
Release process is for maintainers publishing packages.
The renderer implementation lives in rust-core/. Configuration examples live
in examples/. The repository README includes installation instructions and
a short example for each language.