Scaffold the cross-platform rewrite from PySide6/Qt to Tauri + Svelte, following the same architecture as voice-to-notes. The Python backend runs headless as a sidecar, with a FastAPI control API that the Svelte frontend connects to via REST and WebSocket. New files: - backend/app_controller.py: Headless orchestration (extracted from MainWindow) - backend/api_server.py: FastAPI control endpoints + /ws/control WebSocket - backend/main_headless.py: Headless entry point for sidecar mode - src-tauri/: Tauri v2 Rust shell with sidecar and dialog plugins - src/: Svelte 5 frontend (App, Settings, Controls, TranscriptionDisplay) - src/lib/stores/: Reactive stores for backend connection, config, transcriptions Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
28 lines
649 B
JSON
28 lines
649 B
JSON
{
|
|
"name": "local-transcription",
|
|
"private": true,
|
|
"version": "1.4.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite dev",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"tauri": "tauri"
|
|
},
|
|
"devDependencies": {
|
|
"@sveltejs/vite-plugin-svelte": "^5.0.0",
|
|
"@tauri-apps/cli": "^2.0.0",
|
|
"@tsconfig/svelte": "^5.0.0",
|
|
"svelte": "^5.0.0",
|
|
"svelte-check": "^4.0.0",
|
|
"typescript": "~5.6.0",
|
|
"vite": "^6.0.0"
|
|
},
|
|
"dependencies": {
|
|
"@tauri-apps/api": "^2.0.0",
|
|
"@tauri-apps/plugin-dialog": "^2.0.0",
|
|
"@tauri-apps/plugin-shell": "^2.0.0",
|
|
"@tauri-apps/plugin-process": "^2.0.0"
|
|
}
|
|
}
|