import http from 'http' import { WebSocketServer } from 'ws' import { RoomManager } from './services/RoomManager.js' import { MessageHandler } from './handlers/MessageHandler.js' const roomManager = new RoomManager() type wsData = Buffer | ArrayBuffer | Buffer[] | string const PORT = process.env.PORT || 7860 const server = http.createServer((req, res) => { // Handle simple GET / if (req.method === 'GET' && req.url === '/') { res.writeHead(200, { 'Content-Type': 'text/plain' }) res.end('Hello from WebSocket server without Express!') } else { res.writeHead(404, { 'Content-Type': 'text/plain' }) res.end('Not Found') } }) const wss = new WebSocketServer({ server }) wss.on('connection', (ws) => { console.log('connected to user') ws.on('message', (msg: wsData) => { MessageHandler.handle(msg.toString(), ws, roomManager) }) ws.on('close', () => { console.log('connection closed!') }) }) server.listen(PORT, () => { console.log(`Server running on http://localhost:${PORT}`) })