direnv is a nifty open-source extension for your shell on a UNIX operating system such as Linux and macOS. It is compiled into a single static executable and supports shells such as bash , zsh , tcsh , and fish.
The main purpose of direnv is to allow for project-specific environment variables without cluttering
~/.profile or related shell startup files. It implements a new way to load and unload environment variables depending on the current directory.
Originally published at: https://www.tecmint.com/direnv-manage-environment-variables-in-linux/