kcar e0f2207848 security: restrict CORS, add auth token, rate limiting, health endpoint, graceful shutdown
- Replace wildcard CORS with configurable TLSYNC_ALLOWED_ORIGINS env var
- Add TLSYNC_SECRET token validation on /connect/:roomId (401 if missing/wrong)
- Add in-memory rate limiter: max 20 connections per IP per 60s
- Add GET /health endpoint returning status + uptime
- Add SIGTERM/SIGINT graceful shutdown handlers
- Fix hardcoded Access-Control-Allow-Origin: * on uploads and unfurl routes
- Fix rooms.ts: import TLSchema/TLStore/TLStoreOptions from @tldraw/tlschema not tldraw
- Add @tldraw/tlschema 3.6.1 as direct dependency (was transitive, causing ENOENT crash)
- Add named tlsync-node-modules volume to docker-compose to prevent host mount shadowing image packages

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21 17:06:18 +00:00
2026-05-13 22:44:12 +00:00
2025-08-23 13:04:42 +00:00
2025-08-23 14:06:40 +00:00
2025-08-23 13:04:42 +00:00
2025-08-23 14:06:40 +00:00
2025-08-23 13:04:42 +00:00
2025-08-23 13:04:42 +00:00
2025-08-23 13:04:42 +00:00

The file is empty.
Description
TLDraw sync server (Bun + TypeScript) for Classroom Copilot — real-time collaborative whiteboard room management
Readme 290 KiB
Languages
TypeScript 99.6%
Dockerfile 0.4%