Before build, you have to change version in `package.json` to the new version.
```
npm run build
```
> note: this will build executable and installer for your current platform
## Environment Variables
We have some environment variables to control app behavior. The environment variables in this project have a prefix `TAOBIN_RECIPE_MANAGER_`. If you want to set environment variables, you have to add this prefix.
> note: All the environment variables can access through `import.meta.env.{VARIABLE_NAME}`.
In this Client project, we have two environment modes: `electron` and `web`. Business logic will be different in these two modes. you wrap the code in `if (window.electronRuntime)` to run the code in electron mode. You can also use `if (!window.electronRuntime)` to run the code in web mode.
The reason why we have two environment modes is that in electron we have to use native modules for example `deeplink` to handle login callback. But in web, we have to use `window.location.href` to handle login callback.
> In Development, the default if to run cmd `npm run dev` is will run in both electron and web mode. If you want to run in electron or web mode, you can run `npm run dev:electron` or `npm run dev:web`.
In this section, we will list all the environment variables. That app will use in both environment mode the default value if you don't set the environment variables.