Pudu programming language
Menu
Package

@chrismichaelps / pudu-lang-environment

Environment files for Pudu: load .env variables safely with layered files, discovery, expansion, typed reads, and secrets kept out of every message

0.1.0Apache-2.01

InstallClose

← All tickets

Initial environment package #1

closed

@chrismichaelps wrote on 2026-10-07

Ship the first release of @chrismichaelps/pudu-lang-environment: environment files for Pudu that keep a program's secrets out of version control and out of every message the package produces.

Scope:

  • The .env format: comments, quoted and multi-line values, escaped quotes, inline comments, export syntax, trimming, and expansion with ${NAME:-default} and ${NAME-default}.
  • Given files, upward probing, and a layered environment cascade (.env, .env.local, .env.<name>, .env.<name>.local) with safe environment names.
  • Strict and lenient loading, overwrite rules, UTF-8, Latin-1, and UTF-16 sources, and text or byte sources.
  • A settled view over the process environment with typed reads, secrets, required keys, and hand-off to child processes.
  • Settings records bound by derivation and checked with @chrismichaelps/pudu-lang-validator.

Acceptance:

  • Every public module has a suite covering success, failure, edge, and redaction paths.
  • pudu check, pudu fmt --check, pudu lint, and pudu test are clean on Pudu 0.1.3.
  • Mutation testing of the pure layer kills every valid mutant.
  • Runnable examples, README, API documentation in the GitHub Wiki, and a vault page per source file.

Read and reply on GitHub ↗1 comment continue on GitHub.