Env use the vlucas/phpdotenv package and enable their features for Kirby.
This package should be used if you want to store your project credentials or variables in a separate place from your code or if you want to have development and production access in different places.
composer require beebmx/kirby-env
You don't need to do anything if your want to access in any $page, just use the page method:
$page->env('VAR');But if you want to set variables in your config.php file, first you need to load the object with:
\Beebmx\KirbyEnv::load('main/path');You need to have an .env file in your main/path directory.
You can store any credentials or variables secure like:
KIRBY_DEBUG=false
SECRET_KEY=my_secret_key
PUBLIC_KEY=my_public_key
FOO=BAR
BAZ=${FOO}
When you create an instance of \Beebmx\KirbyEnv you need to load the environment with:
\Beebmx\KirbyEnv::load();If you require the immutability provided by vlucas/phpdotenv, just:
\Beebmx\KirbyEnv::overload();Here's an example of a configuration in config.phpfile:
<?php
\Beebmx\KirbyEnv::load('main/path');
return [
    'debug' => env('KIRBY_DEBUG', false),
    'SECRET' => env('SECRET_KEY'),
    'PUBLIC' => env('PUBLIC_KEY'),
];It is important that you add to your .gitignore the .env file.
The main/path is where the .env file is located.