Use TOML for `.env` Files?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Kargo - Stop Scripting Promotions. Start Shipping with Kargo
Kargo automates promotion across dev, staging, and prod with approval gates and verification. Open source, built by the team behind Argo CD. Download now.
akuity.io
sponsored
AppSignal - Monitoring that respects your time & budget
APM, error tracking, and dashboards for modern web apps. Ten-minute setup, transparent flat pricing, and support from engineers who actually use the product.
www.appsignal.com
sponsored
  1. deon

    DeObject Notation Format

    When reading the file, the environment variables will be obtained from the URL and populate the environment.

    This is what I had in mind when designing the import functionality for deon [1].

    Being able to import also makes it easy to have a .base, a .production, a .local setup, and combine them accordingly.

    [1] https://github.com/plurid/deon

  2. Kargo

    Stop Scripting Promotions. Start Shipping with Kargo. Kargo automates promotion across dev, staging, and prod with approval gates and verification. Open source, built by the team behind Argo CD. Download now.

    Kargo logo
  3. goapilib

    Discontinued Collection of packages to simplify writing REST APIs

  4. viper

    Go configuration with fangs

  5. json_env

    Discontinued Loads environment variables from JSON files.

    My major pain point was that I had big JSON files inside my .env files. We use Cloud Foundry at work and it uses plenty of these for configuration.

    I wrote a small Rust tool called ‘json_env’[0] to read JSON files and supply them as ENV vars to a program. I’m working on it in my free time and eventually want to also replace direnv with it. TOML and YAML support is also planned.

    [0] https://github.com/brodo/json_env

  6. gura

    Gura configuration language

    I really like the Gura format (https://github.com/gura-conf/gura). Seems to combine the best of yaml, json, and toml for the use case of human created configuration files.

  7. dhall-lang

    Maintainable configuration files

    I've also seen the Dhall configuration language (https://dhall-lang.org/) mentioned.

  8. theory-exploration-benchmarks

    Mirror of http://chriswarbo.net/git/theory-exploration-benchmarks

    > "CLI args are usually passed around explicitly" -- I think this is a pro, not a con.

    Sure; I never said it's a con. They have different characteristics, and are both useful in certain situations :)

    > I think the correct term for "things the caller knows better than the implementor" are parameters.

    True; that's also the name Racket gives to dynamically-scoped variables https://docs.racket-lang.org/guide/parameterize.html

    In fact, Racket uses a parameter (dynamically-scoped variable) to store the environment. This is actually slightly annoying, since the parameter is one big hashmap of all the env vars; but I usually want to override them individually. One of my Racket projects actually defines a helper function to override individual env vars makes a copies all the other environment ( made a are contained in a parameterhttps://github.com/Warbo/theory-exploration-benchmarks/blob/...

  9. AppSignal

    Monitoring that respects your time & budget. APM, error tracking, and dashboards for modern web apps. Ten-minute setup, transparent flat pricing, and support from engineers who actually use the product.

    AppSignal logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Adding algebraic data types to Nickel

    3 projects | news.ycombinator.com | 7 Sep 2024
  • Primitive Recursive Functions for a Working Programmer

    3 projects | news.ycombinator.com | 4 Aug 2024
  • cue VS rcl - a user suggested alternative

    2 projects | 15 Mar 2025
  • TySON: TypeScript Object Notation

    1 project | news.ycombinator.com | 4 Feb 2024
  • TySON (TypeScript Object Notation)

    1 project | news.ycombinator.com | 23 Jan 2024

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