| Crates.io | stand |
| lib.rs | stand |
| version | 0.1.1 |
| created_at | 2026-01-12 01:22:31.114125+00 |
| updated_at | 2026-01-12 01:30:05.308982+00 |
| description | A CLI tool for explicit environment variable management |
| homepage | |
| repository | https://github.com/ueneid/stand |
| max_upload_size | |
| id | 2036830 |
| size | 357,568 |
A CLI tool for explicit environment variable management that provides a clean, organized way to handle different environments (dev, staging, prod) with their specific configurations.
From crates.io (recommended):
cargo install stand
From source:
git clone https://github.com/ueneid/stand
cd stand
cargo install --path .
Initialize a new project:
stand init
List available environments:
stand list
Show variables for an environment:
stand show dev --values
Execute command with environment:
stand exec dev -- npm start
Create a .stand.toml file in your project root:
version = "2.0"
[settings]
auto_exit_on_dir_change = true # Prevent navigation outside project directory
[common]
APP_NAME = "MyApp"
LOG_FORMAT = "json"
[environments.dev]
description = "Development environment"
color = "green"
DATABASE_URL = "postgres://localhost:5432/dev"
DEBUG = "true"
[environments.prod]
description = "Production environment"
color = "red"
extends = "dev"
requires_confirmation = true
DATABASE_URL = "postgres://prod.example.com/myapp"
DEBUG = "false"
See Configuration Format for all available settings.
extends to inherit from other environments${VAR}Learn by example! Check out the examples/ directory for practical demonstrations:
extends for environment inheritance${VAR} syntaxEach example includes a complete .stand.toml configuration and usage instructions. See the Examples README for detailed walkthroughs.
CLAUDE.md is a symlink to this file for Claude Code compatibilitygit clone https://github.com/ueneid/stand
cd stand
cargo build
cargo test
cargo fmt && cargo clippy -- -D warnings && cargo test
list - List all available environmentsvalidate - Validate configuration filecurrent - Show current environment statusinit - Initialize new configurationshell - Start interactive shell with environment loadedexec - Execute command with environment variablesshow - Show environment variables with source attributionenv - Show active environment variables in current subshellset/unset - Modify environment variables (planned)mainMIT License - see LICENSE file for details.
docs/ directory