Quarkus Quinoa - Configuration Reference

Configuration property fixed at build time - All other configuration properties are overridable at runtime

Configuration property

Type

Default

Indicate if the extension should be enabled.

Environment variable: QUARKUS_QUINOA

boolean

enabled (disabled in test mode)

Indicate if Quinoa should just do the build part. If true, Quinoa will NOT serve the Web UI built resources. This is handy when the output of the build is used to be served via something else (nginx, cdn, …​) Quinoa put the built files in 'target/quinoa/build' (or 'build/quinoa/build with Gradle).

Environment variable: QUARKUS_QUINOA_JUST_BUILD

boolean

false

Root path for hosting the Web UI. This path is normalized and always resolved relative to 'quarkus.http.root-path'.

Environment variable: QUARKUS_QUINOA_UI_ROOT_PATH

string

/

Path to the Web UI (NodeJS) root directory (relative to the project root).

Environment variable: QUARKUS_QUINOA_UI_DIR

string

src/main/webui

This the Web UI internal build system (webpack, …​) output directory. After the build, Quinoa will take the files from this directory, move them to 'target/quinoa/build' (or build/quinoa/build with Gradle) and serve them at runtime. The path is relative to the Web UI path.

Environment variable: QUARKUS_QUINOA_BUILD_DIR

string

framework detection with fallback to 'build/'

Name of the package manager binary. Only npm, pnpm and yarn are supported for the moment.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER

string

auto-detected based on lockfile falling back to 'npm'

Enable Package Manager Installation. This will override "package-manager" config. Set "quarkus.quinoa.package-manager-command.prepend-binary=true" when using with custom commands

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL

boolean

false

The directory where NodeJS should be installed (relative to the project root), It will be installed in a 'node/' subdirectory of this.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_INSTALL_DIR

string

.quinoa/

The NodeJS Version to install locally to the project. Required when package-manager-install is enabled.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_NODE_VERSION

string

The NPM version to install and use. By default, the version is provided by NodeJS.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_NPM_VERSION

string

'provided' means it will use the NPM embedded in NodeJS

Where to download NPM from.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_NPM_DOWNLOAD_ROOT

string

https://registry.npmjs.org/npm/-/

Where to download NodeJS from.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_NODE_DOWNLOAD_ROOT

string

https://nodejs.org/dist/

Install and use Yarn as package manager with this version. This is ignored if the npm-version is defined.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_YARN_VERSION

string

Where to download YARN from.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_YARN_DOWNLOAD_ROOT

string

https://github.com/yarnpkg/yarn/releases/download/

Install and use PNPM as package manager with this version. This is ignored if the npm-version or the yarn-version is defined.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_PNPM_VERSION

string

Where to download PNPM from.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_PNPM_DOWNLOAD_ROOT

string

https://registry.npmjs.org/pnpm/-/

The basic authentication username to use for node download.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_BASIC_AUTH_USERNAME

string

The basic authentication password to use for node download.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_INSTALL_BASIC_AUTH_PASSWORD

string

Custom command for installing all packages. e.g. «ci --cache $CACHE_DIR/.npm --prefer-offline»

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_INSTALL

string

install

Custom command for installing all the packages without generating a lockfile (frozen lockfile) and failing if an update is needed (useful in CI).

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_CI

string

Detected based on package manager

Custom command for building the application.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_BUILD

string

run build

Custom command for running tests for the application.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_TEST

string

run test

Custom command for starting the application in development mode.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_DEV

string

framework detection with fallback to 'start'

Indicate if the Web UI should also be tested during the build phase (i.e: npm test). To be used in a io.quarkus.test.junit.QuarkusTestProfile to have Web UI test running during a io.quarkus.test.junit.QuarkusTest

Environment variable: QUARKUS_QUINOA_RUN_TESTS

boolean

false

Install the packages without generating a lockfile (frozen lockfile) and failing if an update is needed (useful in CI).

Environment variable: QUARKUS_QUINOA_CI

boolean

true if environment CI=true

Force install packages before building. It will install packages only if the node_modules directory is absent or when the package.json is modified in dev-mode.

Environment variable: QUARKUS_QUINOA_FORCE_INSTALL

boolean

false

When true, the UI Framework will be auto-detected if possible

Environment variable: QUARKUS_QUINOA_FRAMEWORK_DETECTION

boolean

true

Enable SPA (Single Page Application) routing, all relevant requests will be re-routed to the index page. Currently, for technical reasons, the Quinoa SPA routing configuration won’t work with RESTEasy Classic.

Environment variable: QUARKUS_QUINOA_ENABLE_SPA_ROUTING

boolean

false

List of path prefixes to be ignored by Quinoa (SPA Handler and Dev-Proxy). The paths are normalized and always resolved relative to 'quarkus.quinoa.ui-root-path'.

Environment variable: QUARKUS_QUINOA_IGNORED_PATH_PREFIXES

list of string

ignore values configured by 'quarkus.resteasy-reactive.path', 'quarkus.rest.path', 'quarkus.resteasy.path' and 'quarkus.http.non-application-root-path'

Enable external dev server (live coding). If the "dev-server.port" config is not detected or defined it will be disabled.

Environment variable: QUARKUS_QUINOA_DEV_SERVER

boolean

true

When set to true, Quinoa will manage the Web UI dev server When set to false, the Web UI dev server have to be started before running Quarkus dev

Environment variable: QUARKUS_QUINOA_DEV_SERVER_MANAGED

boolean

true

Port of the server to forward requests to. The dev server process (i.e npm start) is managed like a dev service by Quarkus. If the external server responds with a 404, it is ignored by Quinoa and processed like any other backend request.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_PORT

int

framework detection or fallback to empty

Host of the server to forward requests to.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_HOST

string

localhost

When set to true, Quinoa requests will be forwarded with tls enabled.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_TLS

boolean

false

When set to true, Quinoa will accept any certificate with any hostname.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_TLS_ALLOW_INSECURE

boolean

false

After start, Quinoa wait for the external dev server. by sending GET requests to this path waiting for a 200 status. If forced empty, Quinoa will not check if the dev server is up.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_CHECK_PATH

string

/

By default, Quinoa will handle request upgrade to websocket and act as proxy with the dev server. If set to false, Quinoa will pass websocket upgrade request to the next Vert.x route handler.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_WEBSOCKET

boolean

true

Timeout in ms for the dev server to be up and running.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_CHECK_TIMEOUT

int

30000

Enable external dev server live coding logs. This is not enabled by default because most dev servers display compilation errors directly in the browser.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_LOGS

boolean

false

Set this value if the index page is different for the dev-server

Environment variable: QUARKUS_QUINOA_DEV_SERVER_INDEX_PAGE

string

auto-detected falling back to index.html

Quinoa deals with SPA routing by itself (see quarkus.quinoa.enable-spa-routing), some dev-server have this feature enabled by default. This is a problem for proxying as it prevents other Quarkus resources (REST, …​) to answer. By default, Quinoa will try to detect when the dev server is answering with a html page for non-existing resources (SPA-Routing) in which case it will instead allow other Quarkus resources (REST, …​) to answer. Set this to true (direct) when the other Quarkus resources use a specific path prefix (and marked as ignored by Quinoa) or if the dev-server is configured without SPA routing.

Environment variable: QUARKUS_QUINOA_DEV_SERVER_DIRECT_FORWARDING

boolean

false

Environment variables for install command execution.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_INSTALL_ENV__INSTALL_ENV_

String

Environment variables for ci command execution.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_CI_ENV__CI_ENV_

String

Environment variables for build command execution.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_BUILD_ENV__BUILD_ENV_

String

Environment variables for test command execution.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_TEST_ENV__TEST_ENV_

String

Environment variables for development command execution.

Environment variable: QUARKUS_QUINOA_PACKAGE_MANAGER_COMMAND_DEV_ENV__DEV_ENV_

String