Files
FrenoCorp/vite.config.ts
Michael Freno ef1b15c9ea FRE-600: Implement Phase 1 WebSocket + Yjs CRDT foundation
- Create TypeScript and Vite configuration for SolidJS
- Implement Yjs document structure for screenplay collaboration
- Build WebSocket connection manager with exponential backoff reconnection
- Create CRDT document manager with undo/redo support
- Set up WebSocket sync server with JWT authentication
- Add SolidJS reactive bindings for Yjs shared types
- Build collaborative editor component
- Write unit tests for CRDT operations
- Document implementation in analysis/fre600_websocket_foundation.md

Architecture: Yjs chosen over Automerge for better ecosystem and
Tauri compatibility. WebSocket for sync, WebRTC for video.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-22 23:08:27 -04:00

38 lines
736 B
TypeScript

import { defineConfig } from 'vite';
import solid from 'vite-plugin-solid';
import { resolve } from 'path';
export default defineConfig({
plugins: [solid()],
resolve: {
alias: {
'@lib': resolve(__dirname, './src/lib'),
'@components': resolve(__dirname, './src/components'),
'@types': resolve(__dirname, './src/types'),
},
},
build: {
target: 'esnext',
outDir: 'dist',
sourcemap: true,
rollupOptions: {
input: {
main: resolve(__dirname, 'index.html'),
},
},
},
server: {
port: 3000,
proxy: {
'/sync': {
target: 'ws://localhost:8080',
ws: true,
},
},
},
test: {
globals: true,
environment: 'node',
},
});