CUE makes it easy to validate data, write schemas, and ensure configurations align with policies.
CUE works with a wide range of tools and formats that you're already using such as Go, JSON, YAML, OpenAPI, and JSON Schema.
For more information and documentation, including tutorials and guides, see cuelang.org.
The full range of installation methods for the cue
command are listed on the
cuelang.org site,
including the official container image suitable for use with Docker.
Here are two common ways to install the command:
Download the latest release from GitHub.
You need Go 1.22 or later to install CUE from source:
go install cuelang.org/go/cmd/cue@latest
You can also clone the repository and build it directly via go install ./cmd/cue
.
Note that local builds lack version information,
so you should inject the version string when building a release, such as:
git switch -d v0.9.0
go install -ldflags='-X cuelang.org/go/cmd/cue/cmd.version=v0.9.0' ./cmd/cue
The fastest way to learn the basics is to follow the tour on the website.
More documentation including various tutorials can be found on the website.
- Language Specification: the official CUE Language specification
- Go API: the Go API on pkg.go.dev
- Builtin packages: builtin functions available from CUE programs
cue
CLI: thecue
command line interface
As a general rule, we support the two most recent major releases of Go, matching Go's security policy. For example, if CUE v0.7.0 is released when Go's latest version is 1.21.5, v0.7.x including any following bugfix releases will require Go 1.20 or later.
To contribute, please read the Contribution Guide.
Guidelines for participating in CUE community spaces and a reporting process for handling issues can be found in the Code of Conduct.
- Ask questions via GitHub Discussions
- Chat with us on Slack and Discord
- Subscribe to our Community Calendar for community updates, demos, office hours, etc
Unless otherwise noted, the CUE source files are distributed under the Apache 2.0 license found in the LICENSE file.