Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/scaffoldly/dotenv-out
This CLI is a wrapper for dotenv and will output a resultant file with the compiled environment in a particular language format.
https://github.com/scaffoldly/dotenv-out
cli dotenv environment-variables shell typescript
Last synced: about 1 month ago
JSON representation
This CLI is a wrapper for dotenv and will output a resultant file with the compiled environment in a particular language format.
- Host: GitHub
- URL: https://github.com/scaffoldly/dotenv-out
- Owner: scaffoldly
- License: mit
- Created: 2021-06-30T00:55:03.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-27T20:30:08.000Z (8 months ago)
- Last Synced: 2024-11-06T05:44:30.245Z (about 2 months ago)
- Topics: cli, dotenv, environment-variables, shell, typescript
- Language: JavaScript
- Homepage:
- Size: 105 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dotenv-out
![npm](https://img.shields.io/npm/v/dotenv-out)
This CLI is a wrapper for [dotenv](https://github.com/motdotla/dotenv) and will
output a resultant file with the compiled environment in a particular language
format.**NOTE**: The behavior of this mimics the same cascading and multi-file options of
[dotenv-cli](https://github.com/entropitor/dotenv-cli), **with the exception**
that the `-c ` flag _DOES NOT_ process `*.local` files.Current output format support:
- Dotenv: `-f dotenv` ([see template](./templates/.env.ejs))
- Shell: `-f shell` ([see template](./templates/env.sh.ejs))
- Typescript: `-f typescript` ([see template](./templates/env.ts.ejs))PRs are welcome for additional templates!
## Running
```shell
# Show all options and examples
npx dotenv-out --help
``````shell
# Debug Output + Dryrun
npx dotenv-out -f typescript -o src -d# Generate ./src/env.ts using .env
npx dotenv-out -f typescript -o src
```See [usage](#usage) for more examples.
### Within a project
```shell
yarn add --dev dotenv-out
```In `package.json`:
```json
"scripts": {
"dotenv": "dotenv-out -f typescript -o src"
},
```## Usage
```
Usage: dotenv-out [options]Options:
--help Show help [boolean]
--version Show version number [boolean]
-f Output format [required] [choices: "dotenv", "shell", "typescript"]
-d Dryrun + Debug (No output file will be written) [boolean] [default: false]
--overwrite Force overwrite if a source file is also a destination file. This will exclude source file from expansion as well [boolean] [default: false]
-e Path to .env file(s), in order of precedence [array] [required] [default: ".env"]
--sls Include environment variables from serverless YAML file [boolean] [default: false]
--slsYaml Include environment variables in the provided Serverless YAML file [string] [default: "serverless.yml"]
-o Output directory for generated Typescript file [required] [default: "."]
-c Cascading env variables from files:
.env. (If not provided an , defaults to `local`)
.envExamples:
dotenv-out -f typescript -d Dryrun+debug output using:
.envdotenv-out -f typescript Generate ./env.ts using:
.envdotenv-out -f typescript -e .env Generate ./env.ts using:
.envdotenv-out -f dotenv -e .env -o src Generate ./src/.env using:
.envdotenv-out -f typescript -e .env -c Generate ./env.ts using:
.env.local
.envdotenv-out -f typescript -e .env -c live Generate ./env.ts using:
.env.live
.envdotenv-out -f typescript -e .env -e .other/.env Generate ./env.ts using:
.env
.other/.envdotenv-out -f typescript -e .env -e .other/.env -c Generate ./env.ts using:
.env.local
.env
.other/.env.local
.other/.envdotenv-out -f typescript -e .env -e .other/.env -c live Generate ./env.ts using:
.env.live
.env
.other/.env.live
.other/.envdotenv-out -f dotenv -e .env -e .other/.env -c live -o outdir Generate ./outdir/.env using:
.env.live
.env
.other/.env.live
.other/.env
```# License
[MIT](./LICENSE)