direnv is a shell environment manager and directory-based environment loader that automatically loads and unloads environment variables when switching between directories. It functions as a shell hook automation tool, injecting logic into the shell configuration to trigger environment updates based on the current project context. The project acts as a development environment isolator by localizing shell configurations, which prevents dependency conflicts and removes project-specific exports from global profile files. It includes specialized integration for Nix, allowing the loading of environ
Bash-it is a framework for organizing and enhancing the Bash shell environment. It provides a structured system for managing aliases, custom scripts, and environment settings to prevent clutter in the primary configuration file. The project includes a prompt customizer with predefined visual themes and a suite of intelligent command completions designed to increase typing speed and reduce input errors. The framework covers broad capability areas including shell configuration management, visual appearance customization, and environment troubleshooting through diagnostic utilities.
Fisher is a plugin manager and shell extension manager specifically for the Fish shell. It provides a system for installing, updating, and removing plugins, themes, functions, and completion scripts. The tool uses a flat-file state persistence method to track installed extensions in a plain text file, which enables the synchronization of shell environments across different systems using version control. It covers the full lifecycle of shell extensions, including the discovery of installed plugins, the installation of packages from remote repositories, and the development of distributable she
Conda is a binary package manager, cross-platform environment manager, and dependency resolution engine. It serves as a software repository manager that enables the installation and update of pre-compiled binaries and their dependencies across different operating systems. The system creates isolated execution spaces to prevent dependency conflicts between projects and uses a solver to calculate compatible package versions based on constraints from available repositories. It supports the creation of custom software packages from recipes, which can be hosted in public or private channels for di
autoenv is a directory-based environment manager and shell workflow automator that automatically loads and unloads environment variables and scripts based on the current working directory. It functions as a hierarchical variable loader, applying configuration settings according to the directory hierarchy to isolate project environments.
The main features of hyperupcall/autoenv are: Directory-Triggered Variable Loading, Environment State Restorers, Hierarchical Loaders, Directory Exit Script Executions, Project Workflow Automation, Shell Context Automations, Shell Configuration Management, Environment Variable Scrubbers.
Open-source alternatives to hyperupcall/autoenv include: direnv/direnv — direnv is a shell environment manager and directory-based environment loader that automatically loads and unloads… bash-it/bash-it — Bash-it is a framework for organizing and enhancing the Bash shell environment. It provides a structured system for… jorgebucaran/fisher — Fisher is a plugin manager and shell extension manager specifically for the Fish shell. It provides a system for… ohmybash/oh-my-bash — Oh My Bash is a shell framework designed to manage the Bash environment through a modular configuration system. It… conda/conda — Conda is a binary package manager, cross-platform environment manager, and dependency resolution engine. It serves as… craftzdog/dotfiles-public — This project is a cross-platform dotfiles collection and shell configuration framework designed to standardize…