Compatibility

Browsers and runtime environment

WebGL, ESM, browser support, SSR boundaries, and known runtime constraints

G6Lite prefers WebGL 2.0 and falls back to WebGL 1.0. Canvas 2D is used for labels and combo outlines, so WebGL 2.0 is not a hard requirement.

Minimum versions

BrowserMinimumRelease yearMain boundary
Chrome80+2020ES2020 syntax, native ESM, and WebGL 1.0
Firefox74+2020ES2020 syntax, native ESM, and WebGL 1.0
Safari on macOS13.1+2020ES2020 syntax and WebGL 1.0
Safari on iOS13.4+2020ES2020 syntax; mobile GPU limits still apply
Edge80+ (Chromium)2020Chromium-based Edge only; EdgeHTML is unsupported
Android WebView / Chrome80+2020ES2020 syntax; validate low-end GPU capacity

Internet Explorer and EdgeHTML are not supported. These are syntax and platform boundaries for the untranspiled ESM-only package, not a complete certified device matrix. See Can I Use optional chaining, Chrome 80, Firefox 74, and Safari 13.1.

Coverage reference

Using global usage data from caniuse-lite@1.0.30001806, retrieved on 2026-07-29:

  • The browser families and minimum versions explicitly listed above account for approximately 90.4% of global browser usage.
  • Across every browser tracked by Can I Use, versions supporting both WebGL 1.0 and native ESM account for approximately 94.8%.

Sources: Can I Use WebGL, JavaScript modules, and caniuse-lite. These figures are selection references, not G6Lite device certification rates. Enterprise browsers, embedded WebViews, disabled GPU acceleration, and low-end devices require separate validation.

Comparison with sigma.js

The sigma.js v3 README describes a WebGL renderer for graphs with thousands of nodes and edges, built on Graphology. Its sigma@3.0.3 package provides both ESM and CommonJS builds. The official README and package metadata checked on 2026-07-29 do not publish an equivalent minimum-browser matrix.

An omitted matrix should not be interpreted as legacy-browser support. Both libraries require WebGL and a modern JavaScript toolchain; G6Lite explicitly documents the syntax floor of its untranspiled package, while sigma.js consumers need to validate their own build target.

G6Lite needs a real DOM canvas and WebGL context. In Next.js, Nuxt, or other SSR frameworks, instantiate Graph only on the client. Standard mini-program runtimes without compatible DOM and WebGL surfaces are not supported.

The renderer uses regl, which dynamically compiles WebGL commands. If the host enables Content Security Policy, script-src must allow 'unsafe-eval'; 'wasm-unsafe-eval' alone is not sufficient. Hosts that cannot allow this directive are not supported by the current renderer.

Hardware acceleration, mobile GPU memory, high DPR, and browser limits on active WebGL contexts affect capacity. Handle WebGL not supported, keep graph containers at non-zero size, and test realistic devices.