Files
br-metaverse/deploy/cloudflare-workers/websocket-gateway.js
Your Name fb90681fad feat: Initialize br-metaverse - Spatial OS Layer
- Three-layer architecture: Universe → Lucidia → br-metaverse
- Core engine with multi-mode rendering (illustrated/pixel/3d)
- Spatial URL navigation system
- Agent avatar system with NATS bridge
- World management
- Demo application with HUD
- Deployment infrastructure (Cloudflare + K3s)
- Comprehensive documentation

Ready for Phase 2: Rendering Engine Implementation
2026-01-30 14:29:54 -06:00

38 lines
855 B
JavaScript

/**
* Cloudflare Worker: WebSocket Gateway
* Bridges browser clients to NATS backend
*/
export default {
async fetch(request, env) {
const upgradeHeader = request.headers.get('Upgrade')
if (upgradeHeader !== 'websocket') {
return new Response('Expected WebSocket', { status: 426 })
}
const [client, server] = Object.values(new WebSocketPair())
server.accept()
server.addEventListener('message', async (event) => {
const data = JSON.parse(event.data)
// Forward to NATS
console.log('Forwarding to NATS:', data)
// Echo for now
server.send(JSON.stringify({ type: 'ack', data }))
})
server.addEventListener('close', () => {
console.log('Client disconnected')
})
return new Response(null, {
status: 101,
webSocket: client
})
}
}