@skweb/ws
v0.2.0
Published
Native WebSocket (ws) runtime adapter for skweb realtime framework.
Readme
@skweb/ws
Native WebSocket (ws) runtime adapter for skweb realtime framework.
Implements the RealtimeApp contract consumed by @skweb/framework's RealtimeFramework. Provides WebSocket transport, room management, and message routing without protocol lock-in.
Wire Format
Inbound messages are JSON strings: { type: string, data?: unknown, ackId?: number }
Outbound messages (via socket.send or broadcast) are JSON: { type: string, data: unknown }
Usage
import { createWsApp } from '@skweb/ws'
const app = createWsApp({ logger: console })
app.onConnection(socket => {
console.log('connected:', socket.id)
})
app.onMessage((socket, msg) => {
if (msg.type === 'ping') {
socket.send('pong', { timestamp: Date.now() })
}
})
app.startServe(3001)For multi-node broadcast and declarative message handlers, use RealtimeFramework from @skweb/framework.
