envHQ

Getting started

From zero to your first envhq push, in the web app and the terminal.

1. Create an account

Go to the sign-up page and create an account. Authentication is handled by Clerk (email/password or supported social logins, depending on how the deployment is configured).

2. Create your first project

From the Dashboard, click New project and give it a name. A dev environment is created for you automatically — you can add more environments (e.g. staging, prod) at any time.

3. Add variables

Open an environment and either:

  • add keys and values one at a time in the editor, or
  • use Paste .env to bulk-import a whole file — existing keys are updated, new keys are added (an upsert-merge; nothing already there is removed by an import).

Values are shown masked by default; use the reveal toggle to view one, or Copy all as .env to copy the whole environment back out.

4. Install the CLI

npm install -g envhq
# or run it without installing:
npx envhq <command>

Requires Node.js ≥ 20. You never need to know a server URL — it's baked into the CLI build.

5. Log in from the terminal

envhq login

This opens your browser, asks you to approve the request while signed in to EnvHQ, and hands a token back to the CLI automatically — nothing to copy-paste. The token is stored in your OS keychain, not as a plaintext file, and is valid for 7 days (the CLI will transparently prompt you to re-authenticate after that).

For CI or headless environments, create a personal access token in Settings → CLI Tokens and pass it with envhq login --token <token> or set the ENVHQ_TOKEN environment variable instead.

6. Link a project folder

In your project's local folder, either bootstrap a brand-new project or link to one that already exists:

# Option A — create a new project + link this folder in one step
envhq init                    # defaults the project name to the folder name
envhq init my-api --env dev,staging

# Option B — link this folder to an existing project
envhq link                    # pick a project, map every environment to a local file

Linking writes a .envhq/ config folder (added to .gitignore automatically) that maps each environment to a local file — by default dev.env, others → .env.<name>.

7. Push and pull

envhq push            # upload the linked default environment's file
envhq push staging    # upload a specific environment
envhq pull --all      # write every linked environment to its mapped file

Pushing to an environment named prod or production asks for confirmation unless you pass --yes.

  1. Read the full CLI reference for every command and flag.
  2. Read the security model before storing anything sensitive — EnvHQ is a free tool with real limitations today.