apple/rules_pkl

Bazel build rules for Pkl

36

stars

180

commits

Starlark

primary language

Jul 10, 2026

updated

README

Pkl Rules

Pkl is an embeddable configuration language with rich support for data templating and validation. It can be used from the command line, integrated in a build pipeline, or embedded in a program. Pkl scales from small to large, simple to complex, ad-hoc to repetitive configuration tasks.

For further information about Pkl, check out the official Pkl documentation.

Quick Start

Setup

To use rules_pkl, enable bzlmod within your project, and then add the following to your MODULE.bazel:

# Please check the releases page on GitHub for the latest released version
bazel_dep(name = "rules_pkl", version = "0.17.1")

Examples

See the examples/ directory for complete examples of how to use rules_pkl.

Ruleset Docs

For further information on the rules provided, check out the rules_pkl documentation.

Minimum required versions

Minimum Pkl version

From 0.12.0 onwards, rules_pkl requires a Pkl version greater than or equal to 0.29.0.

Minimum JVM version

rules_pkl requires at least JDK17.

Contributors

KushalP

78 commits

sitaktif

22 commits

shs96c

20 commits

dependabot[bot]

10 commits

apple/rules_pkl

Bazel build rules for Pkl

36

stars

180

commits

Starlark

primary language

Jul 10, 2026

updated

README

Pkl Rules

Pkl is an embeddable configuration language with rich support for data templating and validation. It can be used from the command line, integrated in a build pipeline, or embedded in a program. Pkl scales from small to large, simple to complex, ad-hoc to repetitive configuration tasks.

For further information about Pkl, check out the official Pkl documentation.

Quick Start

Setup

To use rules_pkl, enable bzlmod within your project, and then add the following to your MODULE.bazel:

# Please check the releases page on GitHub for the latest released version
bazel_dep(name = "rules_pkl", version = "0.17.1")

Examples

See the examples/ directory for complete examples of how to use rules_pkl.

Ruleset Docs

For further information on the rules provided, check out the rules_pkl documentation.

Minimum required versions

Minimum Pkl version

From 0.12.0 onwards, rules_pkl requires a Pkl version greater than or equal to 0.29.0.

Minimum JVM version

rules_pkl requires at least JDK17.

Contributors

KushalP

78 commits

sitaktif

22 commits

shs96c

20 commits

dependabot[bot]

10 commits

Languages

Starlark

71.3%

Pkl

12.8%

Python

6.5%

Shell

4.9%

Java

4.5%