# Web Component

- Human documentation: [https://docs.univer.ai/guides/sheets/getting-started/integrations/web-component](https://docs.univer.ai/guides/sheets/getting-started/integrations/web-component)

- Agent Markdown: [https://docs.univer.ai/guides/sheets/getting-started/integrations/web-component.md](https://docs.univer.ai/guides/sheets/getting-started/integrations/web-component.md)

- Requested language: `en-US`

- Content language: `en-US`

- Documentation version: `1.0.0-rc.0`

- Source: [sheets/getting-started/integrations/web-component.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/sheets/getting-started/integrations/web-component.mdx)

---

> [!NOTE]
> If you are looking for how to use Web Component components as custom components, please refer to [here](https://docs.univer.ai/guides/sheets/ui/components.md#web-component).

Univer can be integrated into Web Components.

> Interactive example: [Open the playground](/playground/sheets/lit)

### Example

The following code is an example of integrating Univer into a Web Component using [Lit](https://lit.dev).

```typescript
import { UniverSheetsCorePreset } from '@univerjs/preset-sheets-core'
import sheetsCoreEnUS from '@univerjs/preset-sheets-core/locales/en-US'
import { createUniver, LocaleType, mergeLocales } from '@univerjs/presets'
import { html, LitElement } from 'lit'

class MyWebComponent extends LitElement {
  override firstUpdated() {
    const container = this.renderRoot.querySelector('#containerId') as HTMLDivElement

    const { univerAPI } = createUniver({
      locale: LocaleType.EN_US,
      locales: {
        [LocaleType.EN_US]: mergeLocales(
          sheetsCoreEnUS,
        ),
      },
      presets: [
        UniverSheetsCorePreset({
          container,
        }),
      ],
    })

    univerAPI.createWorkbook({})
  }

  override render() {
    return html`
      <link rel="stylesheet" href="https://unpkg.com/@univerjs/preset-sheets-core/lib/index.css">
      <div style="height: 100%;" id="containerId" />
    `
  }
}

window.customElements.define('my-univer', MyWebComponent)
```
