Registry /
devops / badman-websocket-starter
Install & Compatibility
Where this runs
No compatibility data collected yet for this library.
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
AbstractWebSocketServer
✓ import { AbstractWebSocketServer } from 'badman-websocket-starter'
✗ const AbstractWebSocketServer = require('badman-websocket-starter').AbstractWebSocketServer
ESM import; CJS requires `.default` for default exports.
AbstractWebSocketServerConnection
✓ import { AbstractWebSocketServerConnection } from 'badman-websocket-starter'
✗ const { AbstractWebSocketServerConnection } = require('badman-websocket-starter')
Named export; avoid destructuring CJS require pattern.
WebSocketServerProperties
✓ import { WebSocketServerProperties } from 'badman-websocket-starter'
✗ import WebSocketServerProperties from 'badman-websocket-starter'
Type/interface, not a value; use named import.
Create a custom WebSocket server by extending abstract classes and configuring properties.
import { AbstractWebSocketServer, AbstractWebSocketServerConnection, WebSocketServerProperties } from 'badman-websocket-starter';
import { WebSocket } from 'ws';
class CustomConnection extends AbstractWebSocketServerConnection<RequestBodyEntity> {
onMessage(msg: Buffer) {
console.log('Received:', msg.toString());
}
}
class CustomServer extends AbstractWebSocketServer<RequestBodyEntity, CustomConnection> {
protected newConnection(requestBody: RequestBodyEntity, ws: WebSocket): CustomConnection {
return new CustomConnection(this.serverProperties, ws, requestBody);
}
}
const props: WebSocketServerProperties = { port: 8080, heartBeatInterval: 10000 };
const server = new CustomServer(props, console);
server.afterInitialized();
Errors
Common errors & fixes
TypeError: Cannot read properties of undefined (reading 'logger')
SingletonObjectFactory2 not initialized before trying to get logger.
fixEnsure SingletonObjectFactory2.init<Logging>(Logging) is called first.
Class extends value undefined is not a constructor or null
CommonJS require instead of ESM import, causing incorrect loading.
fixUse 'import { ... } from 'badman-websocket-starter'' in ESM project. Property 'afterInitialized' does not exist on type 'typeof AbstractWebSocketServer'
Trying to call static method on class instead of instance.
fixCreate an instance first: const server = new CustomServer(props, logger); server.afterInitialized();
Audit
Dependencies
wsrequiredUnderlying WebSocket library