top | item 44536698

(no title)

theozero | 7 months ago

Personally I don't want to write custom code from scratch or glue together 5 tools to do this on every project. I've done it - many many many times... If your project is very simple with a few env vars, it may not be a big deal, but on large projects it quickly becomes a burden. Maybe not one you deal with every day, but regularly - when new teammates join, when new external services are added, when new deployment environments are being used.

Also a big goal here is to have a single tool that will work for all frameworks _and languages_. In monorepo projects, it's very common to have a different custom env var loading and validation setup in each child project, and sharing config across the project is very awkward.

Doing this stuff well is hard, which often means people take shortcuts. So many times dev teams gets stopped in their tracks because someone added a new env var and forgot to distribute it to everyone, or they only added the new key to staging and forgot production. We just want to make doing the right thing the easiest thing.

Imagine if this was just a standard, and when you look at a public docker container, there is a schema of the env vars it takes, rather than digging through the readme. When it boots up, if the env vars are invalid it will give you a clear error message. Imagine when you clone some template project, you get this all this validation and documentation for free, without having to trace through some custom code.

Yes - it is something new, but our hope is that it is intuitive enough to grasp even if it's new to you.

discuss

order

No comments yet.