Orchard#
Define reproducible application state as code.
Orchard is a CLI that lets teams define, compose, and execute scenarios — declarative descriptions of complex application state — using HCL. Instead of writing ad-hoc seeding scripts, teams describe what state they want and Orchard builds it: inserting database rows, calling APIs, running scripts, and wiring outputs between steps automatically.
Scenario language, not fixture language#
Describe the state you want — a merchant with three failed payments, an org with SSO enabled and a suspended user — and Orchard composes the rows, calls, and side effects that produce it.
Reproducible by design#
Same inputs, same state. Components are reusable building blocks; scenarios compose them into complete environments you can stand up, tear down, and share.
Quick start#
go install github.com/pthm/orchard@latest
orchard init my-project && cd my-project
orchard plan scenarios/hello.hcl --var dsn="postgres://localhost/dev"
orchard run scenarios/hello.hcl --var dsn="postgres://localhost/dev"Learn more#
- Getting started — install the CLI and run your first scenario
- Concepts — scenarios, components, providers, and how they fit together
- Providers — reference documentation for built-in providers
- Guides — worked examples: demo data, UAT, local dev, integration testing
- Extending — build your own provider
- Reference — HCL schema, CLI, expressions