# @hono/node-ws

> WebSocket helper for Node.js

Latest version **1.3.1** (published 2026-05-01) · MIT license · 0 weekly downloads

## Install

```sh
npm install @hono/node-ws
pnpm add @hono/node-ws
yarn add @hono/node-ws
bun add @hono/node-ws
```

## Health

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

Positive: has types; esm support; no vulnerabilities; has provenance; high maintenance score; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 1.3.1 |
| Published | 2026-05-01 |
| First published | 2024-05-09 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=18.14.1 |
| Dependencies | 1 |
| Unpacked size | 32 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 992 |
| Maintainers | yusukebe |

## Links

- npm: https://www.npmjs.com/package/@hono/node-ws
- Repository: https://github.com/honojs/middleware
- npm.io page: https://npm.io/package/@hono/node-ws

## Dependencies (1)

- [ws](https://npm.io/package/ws.md) ^8.17.0

## Recent versions

- 1.3.1 (latest) — 2026-05-01
- 1.3.0 — 2026-01-07
- 1.2.0 — 2025-06-22
- 1.1.7 — 2025-06-09
- 1.1.6 — 2025-06-02
- 1.1.5 — 2025-06-01
- 1.1.4 — 2025-04-29
- 1.1.3 — 2025-04-27
- 1.1.2 — 2025-04-26
- 1.1.1 — 2025-04-01
- 1.1.0 — 2025-02-23
- 1.0.8 — 2025-02-10
- 1.0.7 — 2025-02-02
- 1.0.6 — 2025-01-21
- 1.0.5 — 2024-12-10
- … 5 more at https://npm.io/package/@hono/node-ws/versions

## README

# WebSocket helper for Node.js

[![codecov](https://codecov.io/github/honojs/middleware/graph/badge.svg?flag=node-ws)](https://codecov.io/github/honojs/middleware)

> [!WARNING]
> **This package is deprecated.** Node.js Adapter v2 (`@hono/node-server`) now provides built-in WebSocket support via its own `upgradeWebSocket`. Please migrate to `@hono/node-server`. See [WebSocket | @hono/node-server](https://github.com/honojs/node-server#websocket-1) for details.

A WebSocket helper for Node.js

## Migration to `@hono/node-server`

Before:

```ts
import { createNodeWebSocket } from '@hono/node-ws'
import { Hono } from 'hono'
import { serve } from '@hono/node-server'

const app = new Hono()

const { injectWebSocket, upgradeWebSocket } = createNodeWebSocket({ app })

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const server = serve(app)
injectWebSocket(server)
```

After:

```ts
import { serve, upgradeWebSocket } from '@hono/node-server'
import { WebSocketServer } from 'ws'
import { Hono } from 'hono'

const app = new Hono()

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const wss = new WebSocketServer({ noServer: true })
serve({
  fetch: app.fetch,
  websocket: { server: wss },
})
```

## Usage

```ts
import { createNodeWebSocket } from '@hono/node-ws'
import { Hono } from 'hono'
import { serve } from '@hono/node-server'

const app = new Hono()

const { injectWebSocket, upgradeWebSocket } = createNodeWebSocket({ app })

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const server = serve(app)
injectWebSocket(server)
```

## Author

Shotaro Nakamura <https://github.com/nakasyou>

## License

MIT

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