Load environment variables at runtime from a .env file.

Pub Version Build Status Documentation style: tidy


Deploying applications should be simple. This implies constraints:

The twelve-factor app stores config in environment variables (often shortened to env vars or env). Env vars are easy to change between deploys without changing any code... they are a language- and OS-agnostic standard.

An environment is the set of variables known to a process (say, PATH, PORT, ...). It is desirable to mimic the production environment during development (testing, staging, ...) by reading these values from a file.

This library parses that file and optionally merges its values with the built-in Platform.environment map.


See documentation and examples.


Get the latest:

$ dart pub global activate dotenv


$ dart pub global run dotenv:new  # create a .env file and add it to .gitignore
$ dart pub global run dotenv      # load the file and print only the file environment variables to stdout
$ dart pub global run dotenv -p   # load the file and print all the environment variables to stdout


Use the issue tracker for bug reports and feature requests.

Pull requests gleefully considered.

prior art
license: MIT


Loads environment variables from a .env file.