# @vue/web-component-wrapper [![CircleCI](https://circleci.com/gh/vuejs/vue-web-component-wrapper.svg?style=shield)](https://circleci.com/gh/vuejs/vue-web-component-wrapper) > Wrap and register a Vue component as a custom element. ## Compatibility **[Requires ES2015 classes](https://caniuse.com/es6-class). IE11 and below not supported.** - **If targeting browsers that natively supports ES2015, but not native Web Components:** You will also need the [Shady DOM + Custom Elements polyfill](https://github.com/webcomponents/webcomponentsjs/blob/master/webcomponents-sd-ce.js). See caniuse for support on [Custom Elements v1](https://caniuse.com/#feat=custom-elementsv1) and [Shadow DOM v1](https://caniuse.com/#feat=shadowdomv1). - **Note on CSS Encapsulation When Using the Shady DOM polyfill** It's recommended to use [CSS Modules](https://vue-loader.vuejs.org/en/features/css-modules.html) instead of `