SaaSHub helps you find the best software and product alternatives Learn more →
Pkl Alternatives
Similar projects and alternatives to pkl
-
storybook
Storybook is the industry standard workshop for building, documenting, and testing UI components in isolation
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
-
-
-
-
guix
Obsolete mirror of GNU Guix. Pull requests are ignored. Go to https://codeberg.org/guix/guix instead. (by guix-mirror)
-
lowdefy
Build apps that AI can generate, humans can review, and teams can maintain. Config that works between code and natural language.
-
-
-
-
-
-
-
-
-
pkl discussion
pkl reviews and mentions
- Pkl from Apple: configuration as code language with rich validation and tooling
-
Pkl Has a Free API — Apple's Configuration Language That Validates Before Deploy
Pkl solves the "bad config in production" problem:
-
MAML – a new configuration language (similar to JSON, YAML, and TOML)
The other deserving a mention is Pkl. Common denominator of being backed by a FAANG and having a lot of real world use.
https://github.com/apple/pkl
-
Configuration files are user interfaces
Apple has a similar project called Pkl which they use for their internal cloud configuration. http://pkl-lang.org/
It can be converted to JSON, yaml, and a bunch of other formats, and whilst it looks a bit like JSON it's actually a full blown functional programming language designed for creating config trees. The nice thing about Pkl is that it's got full IDE support and the standard library is patterned after Kotlin. So all the method names are very obvious and intuitive especially if you know Java or Kotlin. It has lots of features for validation like range types and so on, so you can get a lot of semantic checking before any config is emitted. It's the first config-as-language language I've seen that is actually good.
KSON looks more like an alternate syntax than a language, which is fine, but because JSON/YAML are just data structures sometimes you really want to do a for loop.
-
JSON5 – JSON for Humans
When I manage a project and have the freedom to choose my configuration structure, then I always use typescript. I never understood the desire to have configuration be in ini/json/jsonnet/yaml. A strongly typed configuration with code completion seems so much more robust. Except of course your usecase is to load or change the config via an API.
I like what apple is doing with https://pkl-lang.org/ though.
- New better alterative to XML, JSON and YAML
-
Thoughts on ThoughtWorks Radar 2024
I was first turned onto Pkl during my Dhall Trough of Disillusionment phase (Dhall is cool, but man is it hard) by James Ward. It looked to be a language that had enough types to compile YAML/JSON configuration files wayyyy more safely. I’ve had enough YAML/JSON misconfigurations break production, that I started looking into ways to compile those problems away, and Dhall helped a lot, but the learning curve and compiler errors are brutal to work through, and I never got excitement amongst peers. Hoping Pkl makes in-roads here.
-
HCL: Toolkit for Structured Configuration Languages
https://github.com/apple/pkl-go/blob/v0.6.0/.circleci/config... seems to imply it's "curl && chmod" so maybe you're thinking of developing pkl itself?
I happened to have a container that I am certain contains no Java and it fired right up
$ docker run -it --rm --entrypoint=/usr/bin/env public.ecr.aws/aws-cli/aws-cli:2.15.38 bash -c 'curl -fsSLO https://github.com/apple/pkl/releases/download/0.25.3/pkl-linux-aarch64; chmod a+x pkl-linux-aarch64; ./pkl-linux-aarch64 --help' -
Exploring Pkl: Apple's Fresh Approach to Configuration Languages
Pkl Official Documentation
-
Apple Pkl
Very cool!
You might want to consider also publishing a schema for it too, as a Pkl package. The package can simply be published as a GitHub release (see details in this post here: https://github.com/apple/pkl/discussions/85#discussioncommen...)
-
A note from our sponsor - SaaSHub
www.saashub.com | 15 Jun 2026
Stats
apple/pkl is an open source project licensed under Apache License 2.0 which is an OSI approved license.
The primary programming language of pkl is Java.