Quarkus logo Web Bundler - Configuration Reference

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

Configuration property

Type

Default

The directory in the resources which serves as root for the web assets

Environment variable: QUARKUS_WEB_BUNDLER_WEB_ROOT

string

web

Resources located in {quarkus.web-bundler.web-root}/{quarkus.web-bundler.static} will be served by Quarkus. This directory path is also used as prefix for serving (e.g. {quarkus.web-bundler.web-root}/static/foo.png will be served on {quarkus.http.root-path}/static/foo.png)

Environment variable: QUARKUS_WEB_BUNDLER_STATIC

string

static

When configured with an internal path (e.g. 'foo/bar'), Bundle files will be served on this path by Quarkus (prefixed by {quarkus.http.root-path}). When configured with an external URL (e.g. 'https://my.cdn.org/'), Bundle files will NOT be served by Quarkus and all resolved paths in the bundle and mapping will automatically point to this url (a CDN for example).

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE_PATH

string

static/bundle

Enable or disable bundle splitting (https://esbuild.github.io/api/#splitting) Code shared between multiple entry points is split off into a separate shared file (chunk) that both entry points import

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_SPLITTING

boolean

true

Configure the file extensions using the js loader: https://esbuild.github.io/content-types/#javascript

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_JS

list of string

js,cjs,mjs

Configure the file extensions using the jsx loader: https://esbuild.github.io/content-types/#jsx

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_JSX

list of string

jsx

Configure the file extensions using the tsx loader: https://esbuild.github.io/content-types/#jsx

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_TSX

list of string

tsx

Configure the file extensions using the ts loader: https://esbuild.github.io/content-types/#typescript

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_TS

list of string

ts,mts,cts

Configure the file extensions using the css loader: https://esbuild.github.io/content-types/#css

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_CSS

list of string

css

Configure the file extensions using the local-css loader: https://esbuild.github.io/content-types/#css

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_LOCAL_CSS

list of string

.module.css

Configure the file extensions using the global-css loader: https://esbuild.github.io/content-types/#css

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_GLOBAL_CSS

list of string

Configure the file extensions using the file loader: https://esbuild.github.io/content-types/#file This loader will copy the file to the output directory and embed the file name into the bundle as a string.

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_FILE

list of string

aac,abw,arc,avif,avi,azw,bin,bmp,bz,bz2,cda,csv,yaml,yml,doc,docx,eot,epub,gz,gif,htm,html,ico,ics,jar,jpeg,jpg,jsonld,mid,midi,mp3,mp4,mpeg,mpkg,odp,ods,odt,oga,ogv,ogx,opus,otf,png,pdf,ppt,pptx,rar,rtf,svg,tar,tif,tiff,ttf,vsd,wav,weba,webm,webp,woff,woff2,xhtml,xls,xlsx,xml,xul,zip,3gp,3g2,7z

Configure the file extensions using the copy loader: https://esbuild.github.io/content-types/#copy

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_COPY

list of string

Configure the file extensions using the base64 loader: https://esbuild.github.io/content-types/#base64

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_BASE64

list of string

Configure the file extensions using the binary loader: https://esbuild.github.io/content-types/#binary

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_BINARY

list of string

Configure the file extensions using the dataurl loader: https://esbuild.github.io/content-types/#data-url

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_DATA_URL

list of string

Configure the file extensions using the empty loader: https://esbuild.github.io/content-types/#empty-file

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_EMPTY

list of string

Configure the file extensions using the text loader: https://esbuild.github.io/content-types/#text

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_TEXT

list of string

txt

Configure the file extensions using the json loader: https://esbuild.github.io/content-types/#json

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_LOADERS_JSON

list of string

json

This defines the list of external paths for esbuild (https://esbuild.github.io/api/#external). Instead of being bundled, the import will be preserved.

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_EXTERNAL

list of string

{quarkus.http.root-path}static/*

Configuration for source-map generation (https://esbuild.github.io/api/#sourcemap)

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLING_SOURCE_MAP

string

linked

Path to the node_modules directory (relative to the project root).

Environment variable: QUARKUS_WEB_BUNDLER_DEPENDENCIES_NODE_MODULES

string

node_modules will be in the build/target directory

Disable this option to allow using runtime web dependencies. When a runtime scope web dependency is used, the dependency will be present in the target app and served at runtime. When a compile only scope web dependency is used, the dependency will only be used at build time and will not be present in the target app. WARNING: Maven compile scope is considered as a runtime scope, use 'provided' for compile only. On Gradle, 'compileOnly' is compile only.

Environment variable: QUARKUS_WEB_BUNDLER_DEPENDENCIES_COMPILE_ONLY

boolean

true

Enable or disable auto-import of web dependencies: all: auto-import all web dependencies (scripts and styles) styles: auto-import only styles web dependencies (scss, sass, css) none: disable auto-import ** Only direct dependencies are auto-imported, not transitive ones.** This is using the dependencies package.json (module, main, style, scss, saas fields) to detect the presence of source scripts and styles: - For all libraries enriching your html experience (htmx, hypercript, lazyload, …​), you don’t necessarily need a script, auto-import is a comfort. - For styling libraries (Bootstrap, Semantic, …​), you most likely want to always auto-import the styles. - For other web libraries (React, Vue, Lit, …​), you will import everything manually in your app scripts.

Environment variable: QUARKUS_WEB_BUNDLER_DEPENDENCIES_AUTO_IMPORT

all, styles, none

none

When enabled, Quarkus will create redirections from {bundlePath}/{entryPointKey}.{js,css} to the corresponding file containing the unique hash. This is useful for fixed external access to the bundle files (fullstack microservices).

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE_REDIRECT

boolean

false

The default charset

Environment variable: QUARKUS_WEB_BUNDLER_CHARSET

Charset

UTF-8

Enable or disable this entry point. You can use this to use the map key as key and dir for this entry point.

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE__BUNDLE_

boolean

true

The directory for this entry point under the web root.

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE__BUNDLE__DIR

string

the bundle map key

The key for this entry point (use the same key as another to bundle them together).

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE__BUNDLE__KEY

string

the bundle map key

Indicate if this directory contains qute tags (as .html files) This is only available if the Quarkus Qute extension is in the project.

Environment variable: QUARKUS_WEB_BUNDLER_BUNDLE__BUNDLE__QUTE_TAGS

boolean

false