Software Alternatives, Accelerators & Startups

Jsonnet

A powerful DSL for elegant description of JSON data.

Jsonnet

Jsonnet Reviews and Details

This page is designed to help you find out whether Jsonnet is good and if it is the right choice for you.

Screenshots and images

  • Jsonnet Landing page
    Landing page //
    2023-05-26

Features & Specs

  1. Configurability

    Jsonnet allows you to write configurations as code, enabling dynamic configuration generation and making it easier to manage complex configurations.

  2. Extensibility

    Jsonnet supports functions and imports, enabling code reuse and modular configuration design across different files and projects.

  3. JSON Compatibility

    Since Jsonnet is a JSON extension, it is fully compatible with JSON, meaning any valid JSON file is also valid in Jsonnet.

  4. Reduce Repetition

    Jsonnet reduces redundancy through capabilities like variables and functions, helping to avoid repetitive configurations and boilerplate.

  5. Final Manifest

    Jsonnet outputs a final manifest in JSON, providing a clean and widely-accepted data format that can be used directly by applications.

Badges

Promote Jsonnet. You can add any of these badges on your website.

SaaSHub badge
Show embed code

Videos

Jsonnet

Using Jsonnet to Package Together Dashboards, Alerts and Exporters - Tom Wilkie

Webinar: Writing Less YAML – Using jsonnet and kubecfg to Manage Kubernetes Resources

Social recommendations and mentions

We have tracked the following product recommendations or mentions on various public social media platforms and blogs. They can help you see what people think about Jsonnet and what they use it for.
  • Levels of Configuration Languages
    Https://jsonnet.org/ I never heard of this before. This seems like the JSON I wish I really had. Of course at some point you could just use JavaScript. - Source: Hacker News / 2 months ago
  • Standard ML idiosyncrasies
    I've been reading the book Modern Compiler Implementation in ML lately. It's been helpful to brush up on some concepts while developing Tsonnet (my typed-aspiring Jsonnet flavor) and I hope to learn a ton more. However, I'm growing dissatisfied with some details -- not specifically the book, but the choice of the development environment. - Source: dev.to / 3 months ago
  • Tsonnet, a humble beginning
    For the past 2 years, I've been working extensively with Jsonnet, a configuration language that augments JSON and helps eliminate repetition in our config files. It has its limits (many by design), which keeps the language simple to use. But there's one thing that keeps nagging at me when I'm deep in the code: what's the shape of the input or output of this function? And wouldn't it be great if we could type... - Source: dev.to / 5 months ago
  • Refactor Terraform Resource Names By One Command
    Jsonnet: Use --jsonnet (-j) for advanced, programmatically controlled renaming logic. - Source: dev.to / 6 months ago
  • Kubernetes 101: Introduction
    Kubernetes does not provide or require a configuration language like Jsonnet, as it provides a declarative API that can be used with different types of declarative specifications. - Source: dev.to / 11 months ago
  • A Reasonable Configuration Language
    Jsonnet[1] and kapitan[2] are the tools I currently use. Their learning curve is not optimal (and I tried to contribute to smoothen it with a jsonnet course[3] and a 'get started wit kapitan' blog post[4]), but once used to it it's hard to do without, and their combination makes them even more useful (esp. If you deploy K8s). In Ruud's case, Jsonnet might have been worth looking at as Hashicorp tools can be... - Source: Hacker News / over 1 year ago
  • Pkl, a Programming Language for Configuration
    Kubernetes config is a decent example. I had ChatGPT generate a representative silly example -- the content doesn't matter so much as the structure: https://gist.github.com/cstrahan/528b00cd5c3a22e3d8f057bb1a75ea61 Now consider 100s (if not 1000s) of such files. I haven't given Pkl an in depth look yet, but I can say that the Industry Standard™ of "simple YAML" + string substitution (with delicate, error prone... - Source: Hacker News / over 1 year ago
  • What Is Wrong with TOML?
    Maybe you'd like jsonnet: https://jsonnet.org/ I find it particularly useful for configurations that often have repeated boilerplate, like ansible playbooks or deploying a bunch of "similar-but" services to kubernetes (with https://tanka.dev). Dhall is also quite interesting, with some tradeoffs: https://dhall-lang.org/ A few years ago I did a small comparison by re-implementing one of my simpler ansible... - Source: Hacker News / almost 2 years ago
  • That people produce HTML with string templates is telling us something
    Apologies for the lack of context, and for missing this comment until today. Both are tools for defining kubernetes manifests (which are YAML) in a reusable manner. Jsonnet is a formally specified extension of JSON. It’s essentially a functional programming language (w/some object oriented features) that generates config files in JSON/YAML/etc, so it’s straightforward to determine whether an input file is valid,... - Source: Hacker News / about 2 years ago
  • TOML: Tom's Obvious Minimal Language
    I like Google's Jsonnet [1], which has all of this except for 4. Jsonnet is quite mature, with fairly wide language adoption, and has the benefit of supporting expressions, including conditionals, arithmetic, as well as being able to define reusable blocks inside function definitions or external files. It's not suitable as a serialization format, but great for config. It's popular in some circles, but I'm sad that... - Source: Hacker News / about 2 years ago
  • The YAML Document from Hell
    I wonder why generated JSON is not used more widely, something like jsonnet[0], although I've never used it. Most systems come with Python 3 installed, which supports working with JSON[1] without installing any dependencies. So, I'm wondering if we could use Python to generate JSON data that is then consumed by other tools. This would fix the lack of comments and trailing commas in JSON, you get functions and... - Source: Hacker News / over 2 years ago
  • What tech stack do you use at work? What's your favourite one?
    Fwiw, jsonnet was a breath of fresh air to help tackle our configuration complexity. Source: over 2 years ago
  • Should i migrate from Kustomize to Helm?
    We experimented with Jsonnet and Dhall as languages that allow you to compose structured text files rather than template then. With hindsight I can tell you that the supporting tooling (linting, testing, package management) never materialized for Jsonnet, and Dhall is too complex unless you have a lot of Haskell devs. Source: over 2 years ago
  • Nginx ingress controller: how to insert whitelist-source-range annotations globally, but conditionally at the same time?
    You can do this sort of thing (and generally keeping everything DRY) by generating your manifests programatically. I use jsonnet (https://jsonnet.org/) to generate k8s manifests, but there are other tools... Source: over 2 years ago
  • Why We Use CUE (and Not Helm)
    Jsonnet promises to be JSON plus templating, and that's exactly what it delivers. It allows you to include other files and has many useful features such as variables and functions. Jsonnet overall was a pretty decent Experience, and we could've stopped there. - Source: dev.to / over 2 years ago
  • Show HN: Jsonnet Course Online
    I hope you enjoy the course (I'm interested in your feedback!) and if it makes you start using Jsonnet it will be mission accomplished :-) [1] https://jsonnet.org/. - Source: Hacker News / over 2 years ago
  • Managing multiple repos
    You can use JSONNET and 'std.parseYaml' function for more precision tuning. Source: over 2 years ago
  • We want to make Nix better
    > To seriously answer the question: is the Nix language required for the Nix packaging system to exist? Laziness is required, to some degree, but can the next iteration provide an on-ramp which doesn't involve learning a new lang and paradigm? Guix folks sure think so. I'd love to hear from someone deeply familiar with Nix and Guix about laziness. I'm deeply familiar with Nix and I've concluded that lazy semantics... - Source: Hacker News / almost 3 years ago
  • Falling for Kubernetes
    > As an aside, the existence of the '{{ | indent 4 }}' function in helm should disqualify it from any serious use. Render, don't template. This. My first thought when I saw the indentation hack was "it can't be a serious, production-ready software". My take on this is as follows. If you have a simple use case, write your K8s manifests directly. If you have a complex use case, Helm is often more pain than its... - Source: Hacker News / almost 3 years ago
  • HELM vs KUSTOMIZE
    There's json generation libraries. Don't know why they didn't mention jsonnet, which is much more popular than either one and has fairly wide usage in the k8s community. Source: almost 3 years ago
  • Why JSON Isn’t a Good Configuration Language (2018)
    Jsonnet[1] might suit your use-case better, it was created to do exactly that. [1]https://jsonnet.org. - Source: Hacker News / about 3 years ago

Do you know an article comparing Jsonnet to other products?
Suggest a link to a post with product alternatives.

Suggest an article

Jsonnet discussion

Log in or Post with

Is Jsonnet good? This is an informative page that will help you find out. Moreover, you can review and discuss Jsonnet here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.