3.0.0 • Published 3 months ago

feasible v3.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

Feasible

Guided and unified development environments setup wizard.

Life Cycle

  1. Download config file from remote if --url option is used
  2. Prompt questions
  3. Resolve default variables
  4. Initial hooks executed (if this is first setup/no lock file)
  5. Pre hooks executed
  6. Clone remote repository (if repository defined in config file)
  7. Clean up earlier produced files
  8. Render and save files
  9. Post hooks executed

Getting Started

1. Automate

Let's start by installing Feasible as a dev dependency of your project npm install feasible --save-dev or yarn add feasible --dev and add a script to your package.json, e.g.: "env": "feasible" just to trigger feasible. Or you can skip installation section and use npx feasible directly on your hooks

After that we need to create a configuration file in format you prefer feasible.{yml,json,json5}

Last step we have to create a git hook to automate updating environment on pull or checkouts (your choice, example is using husky, but you can use any other hook system) npx husky add .husky/post-merge "npm run env" or npx husky add .husky/post-checkout "npm run env" or both.

2. Manually managing

Install as a global and use on any project that have feasible.{yml,json,json5} configuration file npm install -g feasible or npx feasible

Commands & Arguments

  • Using different config file other than feasible.{yml,json,json5} feasible -c custom.json
Usage: feasible <command> [options]

Start setup process

Options:
  -V, --version                output the version number
  -c, --config <FilePath>      Configuration file (default: "feasible.{json,json5,yml}")
  -u, --url <FileUrl>          Configuration file url. Example: https://my-private-repo.git.com/raw/dope-repository/main/feasible.{json,json5,yml}?token=TOKEN
  -f, --force                  Overwrite current setup if it exists and start over (default: false)
  -p, --parallel               Enable parallel actions if possible (default: false)
  -s, --separator <Separator>  Default separator for variable and values (default: "=")
  -n, --no-clean               Don't clean up old output files
  -h, --help                   display help for command
  • Fetch remote config and execute npx feasible -c https://remote-url.io/feasible.yml
  • Version feasible --version
  • Help feasible --help

Configuration

3.0.0

3 months ago

3.0.0-alpha.1

3 months ago

3.0.0-alpha.3

3 months ago

3.0.0-alpha.5

3 months ago

3.0.0-alpha.4

3 months ago

2.3.2

2 years ago

2.3.0

2 years ago

2.3.1

2 years ago

2.2.1

2 years ago

2.2.0

2 years ago

2.1.0

2 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago

0.5.0

3 years ago

0.4.1

3 years ago

0.3.0

3 years ago

0.4.0

3 years ago

0.2.0

3 years ago

0.1.0

3 years ago

5.0.0

10 years ago