Quickstart
Store your first environment variables in turboEnv and load them into a running app, in about five minutes.
By the end of this page your app will boot with its configuration pulled from
turboEnv instead of a .env file on your laptop. It takes about five minutes and
you need nothing installed except Node.
1. Create a project
Sign in to the dashboard and create a project. A project is
usually one deployable thing — one service, one site — and it comes with three
environments: development, staging and production.
Projects belong to a team, never to a person, so nothing has to be transferred when somebody leaves. If you are working alone, you are a team of one and this costs you nothing.
2. Add your variables
Open the development environment, press Paste .env, and paste a file you
already have. turboEnv parses it, so you do not have to add keys one at a time:
DATABASE_URL=postgres://localhost:5432/app
STRIPE_KEY=sk_test_abc123
PORT=3000
Importing merges rather than replaces, so pasting a partial file will not silently delete the variables it does not mention.
Untick Secret on the ones that are not really secret, like PORT.
Everything is encrypted at rest either way — the flag controls whether the
dashboard masks the value on screen, and whether an AI agent is allowed to read
it.
Press save. That is version 1. You can leave a short message describing the change, which shows up in the version history next to your name. Every save from here writes a new immutable version rather than editing the last one, so nothing you store is ever destroyed.
3. Sign in from your terminal
npm install -g turboenv-cli
turboenv login
Your browser opens, you approve the request, and a credential is written to
~/.turboenv/credentials.json. Your terminal shows a short confirmation code
that you type into the page — that is what proves the login came from you and
not from a page that talked you into approving it.
4. Tell the repo which environment it uses
From your project directory:
turboenv init
It asks which project and environment, then writes a small turboenv.json:
{
"project": "your-project",
"environment": "development",
"encryption": "service"
}
Commit it. It holds names, never values, so everyone who clones the repo gets
the same defaults and nobody has to remember a slug. You can skip this step and
pass -p and -e on every command instead, but you will not enjoy it.
5. Run your app
turboenv run -- npm start
That is the whole integration. The CLI fetches the variables, injects them into the environment of the process it starts, and gets out of the way. There is no library to import and no code change, so it works the same for Node, Python, Go, Ruby or a compiled binary:
turboenv run -- python manage.py runserver
turboenv run -- ./bin/api
If you would rather have a file, turboenv print writes one:
turboenv print > .env
Prefer run where you can. print puts decrypted values on disk, where they
can be committed by accident — which is the problem you came here to fix.
Changing a variable later
Edit it in the dashboard, or edit your local .env and push it up:
turboenv push
It shows you what would change and waits for you to confirm. Only names are printed, never values:
+ STRIPE_WEBHOOK_SECRET
~ DATABASE_URL
Save as version 2? [y/N]
That writes a new version rather than editing the last one, so a mistake is a rollback rather than an incident. More in Project configuration.
To bring a dashboard or teammate change back into your local file:
turboenv pull
It merges remote values, keeps local-only variables, backs up the old file, and asks before writing decrypted values.
What to do next
Your laptop is done. The two things worth reading next are how to get this onto a server, which needs a different kind of credential, and what the pieces you just used actually are.
- Deploying and CI —
turboenv logindeliberately refuses to work in CI, so a deployment needs a scoped token instead. - Concepts — projects, environments, versions and teams, in one page.
- Project configuration —
turboenv.json, pull and push in full, including what happens when two people push at once. - Tokens and access — the two kinds of credential and exactly what each one can reach.