Core types, protocols and Redis utilities for RoomKit multiplayer framework
npm install @roomkit/coreCore types, protocols, and utilities for the RoomKit framework.
``bash`
npm install @roomkit/core
- 🔌 Protocol Definitions - Message IDs, types, and payloads
- 🔑 Redis Keys - Standardized Redis key patterns
- 📝 TypeScript Types - Complete type definitions for all protocols
- 🛠️ Utilities - Common utilities for Gateway and Worker
`typescript
import { MessageId, MessageType } from '@roomkit/core';
// Message IDs
MessageId.AUTH
MessageId.CREATE_ROOM
MessageId.JOIN_ROOM
// ... etc
// Message Types
MessageType.REQUEST
MessageType.RESPONSE
MessageType.NOTIFICATION
`
`typescript
import { RedisKeys, RedisChannels } from '@roomkit/core/redis';
// Keys
RedisKeys.session(sessionId)
RedisKeys.room(roomId)
RedisKeys.gateway(gatewayId)
RedisKeys.worker(workerId)
// Channels
RedisChannels.rpcGateway(gatewayId)
RedisChannels.rpcWorker(workerId)
RedisChannels.broadcast()
`
`typescript`
import type {
WsMessage,
AuthPayload,
CreateRoomPayload,
JoinRoomPayload
} from '@roomkit/core';
This package is primarily used internally by @roomkit/gateway and @roomkit/worker`, but can also be used by:
- Custom room implementations
- Testing utilities
- Protocol-compatible clients
MIT