Direnv

direnv

ComeOnOliver Updated 61 repo stars

File contents

direnv

Overview

direnv automatically loads/unloads environment variables when you cd into a directory. No more source .env — enter the project folder and variables are set.

Instructions

Step 1: Install

brew install direnv
# Add to .bashrc or .zshrc:
eval "$(direnv hook bash)"

Step 2: Configure

# .envrc — Auto-loaded when entering directory
export DATABASE_URL="postgresql://localhost:5432/myapp"
export API_KEY="sk-dev-key-123"
export NODE_ENV="development"
dotenv .env
PATH_add bin
PATH_add node_modules/.bin
direnv allow    # required first time and after changes

Step 3: Per-Project Layouts

# .envrc — Use specific versions
use nvm 20
layout python3

Guidelines

  • Always add .envrc to .gitignore — it contains secrets.
  • Use .envrc.example (committed) as template.
  • direnv unloads vars when you leave the directory — no env pollution.

ComeOnOliver/skillshub/tree/main/skills/TerminalSkills/skills/direnv commit 3291e04390

Frequently asked questions

npx skillmds@latest add comeonoliver/direnv