Skip to main content
Webstorio pages and components are React (.tsx). However your code is created — generated by the AI page builder, tweaked in the visual editor, or written and pushed with the CLI — the Webstorio server compiles it against a fixed set of supported libraries at pinned versions. This list is the compatibility manifest.

Allowed libraries

These packages are first-class runtime dependencies: Webstorio keeps their imports external and loads pinned, platform-tested versions in development and production. Subpaths under react/, react-dom/, motion/, three/, lenis/, @react-three/, @react-spring/, and @hugeicons/ are allowed when they match the packages above.
Other npm packages must be installed in the CLI project. The CLI bundles them into the uploaded page code, and Webstorio still applies code-safety validation before compiling. Packages that use blocked browser APIs (for example XMLHttpRequest, WebSocket, eval, or document.cookie) fail validation even after bundling — axios is a common example. Node-native or server-only packages also fail to compose.

Other npm packages

Install browser-safe utility packages normally, then import them by package name:
The CLI bundles non-first-class packages into each page that uses them and reports their names and declared versions to Webstorio as candidates for future first-class support. Review each package’s security, license, bundle size, and browser compatibility before publishing. Prefer first-class libraries when you need networking, maps, animation, or other platform-tested behavior.

Compatibility date

Each project pins a compatibility date — the compatibilityDate field in webstorio.config.ts, a YYYY-MM-DD value that selects which versions of the libraries above your project targets.
  • webstorio init writes the current date when you scaffold a project.
  • The server compiles against the newest version set effective on or before that date, so your site keeps building the same way even as Webstorio ships newer versions later.
  • To adopt newer versions, bump the date with webstorio update, which also realigns your local devDependencies.

Keeping local code in sync

When you build with the CLI, run webstorio update to align your local devDependencies with the exact versions the server uses — so your editor types and local preview match production.

Request a library

Need a package that isn’t on the list? You can ask us to add it to the compatibility manifest. Email [email protected] with:
  • the package name (and the version, if you need a specific one),
  • a short note on what you’re building and why the package is needed, and
  • a link to the package (npm or repository).
We prioritize widely-used, browser-safe libraries that compile cleanly on the server. Until a package is first-class, you can still install and import it in a CLI project when it passes compose + code-safety checks.