pkl

A configuration as code language with rich validation and tooling. (by apple)

Pkl Alternatives

Similar projects and alternatives to pkl

  1. storybook

    375 pkl VS storybook

    Storybook is the industry standard workshop for building, documenting, and testing UI components in isolation

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. roast

    135 pkl VS roast

    🦋 Raku test suite (by Raku)

  4. dhall-lang

    128 pkl VS dhall-lang

    Maintainable configuration files

  5. json5

    107 pkl VS json5

    JSON5 — JSON for Humans

  6. yq

    75 pkl VS yq

    yq is a portable command-line YAML, JSON, XML, CSV, TOML, HCL and properties processor

  7. jsonnet

    54 pkl VS jsonnet

    Jsonnet - The data templating language

  8. hcl

    50 pkl VS hcl

    HCL is the HashiCorp configuration language.

  9. kotlinx.serialization

    Kotlin multiplatform / multi-format serialization

  10. guix

    56 pkl VS guix

    Obsolete mirror of GNU Guix. Pull requests are ignored. Go to https://codeberg.org/guix/guix instead. (by guix-mirror)

  11. lowdefy

    55 pkl VS lowdefy

    Build apps that AI can generate, humans can review, and teams can maintain. Config that works between code and natural language.

  12. npm

    54 pkl VS npm
  13. edn

    40 pkl VS edn

    Extensible Data Notation

  14. rcl

    28 pkl VS rcl

    A reasonable configuration language

  15. gojq

    34 pkl VS gojq

    Pure Go implementation of jq

  16. cuetorials.com

    Learn you some CUE for a great good!

  17. bcl

    10 pkl VS bcl

    Basic Configuration Language

  18. hujson

    11 pkl VS hujson

    HuJSON: JSON for Humans (JWCC: JSON w/ comments and trailing commas)

  19. libconfini

    Yet another INI parser

  20. hjson

    8 pkl VS hjson

    Hjson, a user interface for JSON

  21. pkl-k8s-examples

    Examples for using Pkl with Kubernetes

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better pkl alternative or higher similarity.

pkl discussion

Log in or Post with

pkl reviews and mentions

Posts with mentions or reviews of pkl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2026-03-28.
  • Pkl from Apple: configuration as code language with rich validation and tooling
    1 project | news.ycombinator.com | 31 May 2026
  • Pkl Has a Free API — Apple's Configuration Language That Validates Before Deploy
    2 projects | dev.to | 28 Mar 2026
    Pkl solves the "bad config in production" problem:
  • MAML – a new configuration language (similar to JSON, YAML, and TOML)
    6 projects | news.ycombinator.com | 12 Oct 2025
    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
    2 projects | news.ycombinator.com | 18 Sep 2025
    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
    21 projects | news.ycombinator.com | 8 Dec 2024
    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
    2 projects | news.ycombinator.com | 3 Nov 2024
  • Thoughts on ThoughtWorks Radar 2024
    12 projects | dev.to | 2 Nov 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
    8 projects | news.ycombinator.com | 23 Apr 2024
    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
    2 projects | dev.to | 29 Feb 2024
    Pkl Official Documentation
  • Apple Pkl
    3 projects | news.ycombinator.com | 22 Feb 2024
    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
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic pkl repo stats
20
11,397
9.4
5 days ago

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.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com

Did you know that Java is
the 10th most popular programming language
based on number of references?