Force archive the following proposals: - add-audio-device-selector (complete) - add-embedded-backend-packaging (19/26 tasks) - add-flexible-deployment-options (20/21 tasks) New specs created: - audio-device-management (7 requirements) - embedded-backend (8 requirements) Updated specs: - transcription (+2 requirements for model download progress) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.8 KiB
1.8 KiB
Change: Add Embedded Backend Packaging for All-in-One Deployment
Why
Currently, deploying Meeting Assistant requires setting up both the Electron client and a separate backend server. For enterprise internal deployment, users want a simpler experience: double-click the exe and it works without needing to understand or configure backend services separately.
Additionally, when users first run the packaged application, the Whisper model download (~1.5GB) shows only "loading_model" status with no progress indication, causing confusion about whether the download is actually happening.
What Changes
- New capability: Embedded Backend - Package FastAPI backend as a sidecar managed by Electron
- Backend sidecar management - Electron starts/stops backend process automatically
- Health check mechanism - Wait for backend readiness before loading frontend
- Configuration unification - All settings (DB, API keys, auth) in single
config.json - Backward compatible - Existing deployment method (separate backend) still works via
backend.embedded: falseflag - Model download progress - Show real-time download percentage for Whisper model
Impact
- Affected specs:
embedded-backend(new),transcription(modified) - Affected code:
backend/run_server.py(new) - Backend entry point for packagingbackend/build.py(new) - PyInstaller build scriptbackend/app/config.py- Support frozen executable pathsclient/src/main.js- Backend sidecar managementclient/src/preload.js- Expose backend status APIclient/config.json- Extended configuration schemaclient/package.json- Build configuration for backend resourcessidecar/transcriber.py- Model download progress reportingscripts/build-client.bat- Integrated build scriptscripts/build-all.ps1- PowerShell build script