These docs cover qiankun 3.0 (RC) — install it with npm i qiankun@rc. For 2.x, see the v2 docs.
Skip to content

Browser support

qiankun 3 targets modern browsers and does not support IE. The exact requirements depend on which capabilities you enable: the base runtime is the most permissive, while native ESM and style isolation each rely on newer browser features. This page is the single source of truth for browser compatibility; other pages defer to it.

Capabilities and their requirements

CapabilityBrowser features it relies onBrowser requirement
Base runtime (loading, classic script execution, JS sandbox)Proxy, TransformStream, URL.createObjectURLAny recent mainstream Chrome, Edge, Safari, or Firefox
Native ESM micro-apps (Native ESM support)Dynamically injected import mapsChrome/Edge 133+, Safari 18.4+; not supported in Firefox by default
Style isolation (Style isolation)Native CSS @scope, with no polyfill or fallbackChrome/Edge 118+, Safari 17.4+, Firefox 128+

The rows stack: if you only ship classic micro-apps without style isolation, the first row is all that matters; each additional capability tightens the browser matrix by its own row.

Prefer runtime detection over version lists

The base runtime can be detected at runtime, so there is no need to maintain a browser version list yourself:

ts
import { isRuntimeCompatible } from 'qiankun';

if (isRuntimeCompatible()) {
  // load micro-apps
}

Note that isRuntimeCompatible() only covers the three base-runtime features — it does not check dynamic import maps or CSS @scope. Whether to enable native ESM or style isolation must be evaluated separately against the table above.

Firefox and native ESM

The ESM sandbox relies on injecting multiple import maps dynamically, which Firefox does not yet enable by default. To support Firefox, deliver micro-apps as classic scripts instead (for example a Webpack build); the base runtime and style isolation are unaffected on Firefox.

Keep reading

Released under the MIT License.