Initial skeleton: React/TS frontend + Go backend structure

This commit is contained in:
Hermes Agent
2026-06-16 08:51:55 -04:00
parent 78f19cde7d
commit 33c6648b84
40 changed files with 1799 additions and 0 deletions

37
client/src/utils/crdt.ts Normal file
View File

@@ -0,0 +1,37 @@
import * as Y from 'yjs'
let doc: Y.Doc | null = null
let provider: any | null = null
export const initCRDT = (roomName: string, signalingUrl: string) => {
doc = new Y.Doc()
provider = new (require('y-webrtc').WebrtcProvider)(
roomName,
doc,
{
signaling: [signalingUrl],
}
)
provider.on('status', (status: string) => {
console.log('[CRDT] Status:', status)
})
return doc
}
export const getCRDTDoc = (): Y.Doc | null => {
return doc
}
export const getCRDTProvider = () => {
return provider
}
export const destroyCRDT = () => {
provider?.destroy()
doc?.destroy()
doc = null
provider = null
}