# @web3auth/ws-embed

> Embed script

Latest version **6.1.0** (published 2026-06-09) · ISC license · 0 weekly downloads

## Install

```sh
npm install @web3auth/ws-embed
pnpm add @web3auth/ws-embed
yarn add @web3auth/ws-embed
bun add @web3auth/ws-embed
```

## Health

**Score 65/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 6.1.0 |
| Published | 2026-06-09 |
| First published | 2023-11-14 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=22.x |
| Dependencies | 9 |
| Unpacked size | 163.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Torus Labs |
| Maintainers | chaitanyapotti, archit_web3, himanshunpm009 |
| Keywords | torus, wallet, web3auth, embed, login, OAuth, crypto |

## Links

- npm: https://www.npmjs.com/package/@web3auth/ws-embed
- npm.io page: https://npm.io/package/@web3auth/ws-embed

## Dependencies (9)

- [loglevel](https://npm.io/package/loglevel.md) ^1.9.2
- [deepmerge](https://npm.io/package/deepmerge.md) ^4.3.1
- [@scure/base](https://npm.io/package/@scure/base.md) 2.2.0
- [@web3auth/auth](https://npm.io/package/@web3auth/auth.md) ^11.8.1
- [fast-deep-equal](https://npm.io/package/fast-deep-equal.md) ^3.1.3
- [readable-stream](https://npm.io/package/readable-stream.md) ^4.7.0
- [@toruslabs/constants](https://npm.io/package/@toruslabs/constants.md) ^16.1.1
- [@toruslabs/http-helpers](https://npm.io/package/@toruslabs/http-helpers.md) ^9.0.0
- [@toruslabs/base-controllers](https://npm.io/package/@toruslabs/base-controllers.md) ^9.10.0

## Alternatives

- [@clerk/clerk-expo](https://npm.io/package/@clerk/clerk-expo.md) — 133.6K weekly downloads
- [@pothos/plugin-authz](https://npm.io/package/@pothos/plugin-authz.md) — 12.4K weekly downloads
- [@bounded-sh/client](https://npm.io/package/@bounded-sh/client.md) — 3.2K weekly downloads
- [@oxyhq/services](https://npm.io/package/@oxyhq/services.md) — 2.3K weekly downloads
- [@luigi-project/plugin-auth-oauth2](https://npm.io/package/@luigi-project/plugin-auth-oauth2.md) — 2.3K weekly downloads

## Recent versions

- 6.1.0 (latest) — 2026-06-09
- 1.0.1-beta.3 (next) — 2024-01-30
- 6.0.4 — 2026-05-22
- 6.0.3 — 2026-05-20
- 6.0.2 — 2026-05-11
- 6.0.0 — 2026-04-16
- 5.6.0 — 2026-02-09
- 5.5.3 — 2026-02-06
- 5.5.2 — 2026-02-06
- 5.5.0 — 2026-01-15
- 5.4.0 — 2026-01-12
- 5.3.0 — 2025-12-02
- 5.2.2 — 2025-11-07
- 5.2.0 — 2025-11-05
- 5.1.0 — 2025-10-09
- … 36 more at https://npm.io/package/@web3auth/ws-embed/versions

## README

# Wallet Services Embed (by [Web3Auth](https://web3auth.io/docs))

[![npm version](https://badge.fury.io/js/@web3auth%ws-embed.svg)](https://badge.fury.io/js/@web3auth%ws-embed)
![npm](https://img.shields.io/npm/dw/@web3auth/ws-embed)

> [Web3Auth](https://web3auth.io) is where passwordless auth meets non-custodial key infrastructure for Web3 apps and wallets. By aggregating OAuth (Google, Twitter, Discord) logins, different wallets and innovative Multi Party Computation (MPC) - Web3Auth provides a seamless login experience to every user on your application.

## 🔗 Installation

```shell
npm install --save @web3auth/ws-embed
```

## ⚡ Quick Start

### Get your Client ID from Web3Auth Dashboard

Hop on to the [Web3Auth Dashboard](https://dashboard.web3auth.io/) and create a new project. Use the Client ID of the project to start your integration.

// TODO: Add Image

## Initialize & Login

```ts
import WsEmbed from "@web3auth/ws-embed";

const embed = new WsEmbed({ web3AuthClientId: "clientId", web3AuthNetwork: "sapphire_devnet" });
await embed.init({
  buildEnv: "production", // default: production
  chainConfig: {}, // Provide your chain config
});
await embed.login();
```

## 🌐 Demo

Checkout the [WS Embed Demo](https://demo-wallet.web3auth.io/) to see how `WS Embed` can be used in your application.

## 💬 Troubleshooting and Discussions

- Have a look at our [GitHub Discussions](https://github.com/Web3Auth/Web3Auth/discussions?discussions_q=sort%3Atop) to see if anyone has any questions or issues you might be having.
- Checkout our [Troubleshooting Documentation Page](https://web3auth.io/docs/troubleshooting) to know the common issues and solutions
- Join our [Discord](https://discord.gg/web3auth) to join our community and get private integration support or help with your integration.

## Introduction

This module generates the javascript to include in a DApp via a script tag.
It creates an iframe that loads the Torus page and sets up communication streams between
the iframe and the DApp javascript context.

## Features

- Typescript compatible. Includes Type definitions

## Installation

### Bundling

This module is distributed in 3 formats

- `esm` build `dist/embed.esm.js` is es6 format
- `commonjs` build `dist/embed.cjs.js` in es5 format
- `umd` build `dist/embed.umd.min.js` in es5 format without polyfilling corejs minified

By default, the appropriate format is used for your specified usecase
You can use a different format (if you know what you're doing) by referencing the correct file

The cjs build is not polyfilled with core-js.
It is upto the user to polyfill based on the browserlist they target

### Directly in Browser

CDN's serve the non-core-js polyfilled version by default. You can use a different

jsdeliver

```js
<script src="https://cdn.jsdelivr.net/npm/@web3auth/ws-embed"></script>
```

unpkg

```js
<script src="https://unpkg.com/@web3auth/ws-embed"></script>
```

### Tips for NUXT

This is a plugin that works [only on the client side](https://nuxtjs.org/guide/plugins/#client-side-only). So please register it as a ssr-free plugin.

## Usage

Please refer to the [examples](examples) folder for details on usage using dynamic import.

## Requirements

- This package requires a peer dependency of `@babel/runtime`
- Node 18+

---
_Source: https://npm.io/package/@web3auth/ws-embed · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
