egg 7d3fc72bd2 feat: Add browser mode fallback for Kaspersky audio blocking
- Add sidecar management to backend (sidecar_manager.py)
- Add sidecar API router for browser mode (/api/sidecar/*)
- Add browser-api.js polyfill for running in Chrome/Edge
- Add "Open in Browser" button when audio access fails
- Update build scripts with new sidecar modules
- Add start-browser.sh for development browser mode

Browser mode allows users to open the app in their system browser
when Electron's audio access is blocked by security software.
The backend manages the sidecar process in browser mode (BROWSER_MODE=true).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 16:41:25 +08:00

Meeting Assistant

會議助理系統 - 幫助企業高效記錄、整理和追蹤會議內容。

功能特色

  • 即時語音轉寫: 使用本地 Whisper 模型進行會議錄音轉文字
  • AI 智能摘要: 透過 Dify LLM 自動生成會議結論與待辦事項
  • 會議紀錄管理: 建立、編輯、搜尋會議紀錄
  • Excel 匯出: 支援自訂模板的會議紀錄匯出
  • 多用戶支援: 企業身份驗證整合

系統架構

Meeting_Assistant/
├── backend/          # FastAPI 後端 API
├── client/           # Electron 桌面應用程式
├── sidecar/          # Whisper 語音轉寫引擎
├── scripts/          # 部署腳本
└── docs/             # 文件

系統需求

開發環境

  • Python 3.10+
  • Node.js 18+
  • MySQL 8.0+

運行環境

  • Windows 10/11 (Electron 客戶端)
  • Linux (後端服務器)

快速開始

1. 複製專案

git clone <repository-url>
cd Meeting_Assistant

2. 設置後端

cd backend
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env
# 編輯 .env 配置資料庫和 API 金鑰

3. 設置前端

cd client
npm install
cp .env.example .env
# 編輯 .env 配置後端 API 地址

4. 設置 Sidecar (語音轉寫)

cd sidecar
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

5. 啟動服務

# 使用啟動腳本
./start.sh start

# 或分別啟動
cd backend && uvicorn app.main:app --reload
cd client && npm start

配置說明

後端環境變數 (backend/.env)

變數 說明 必填
DB_HOST, DB_PORT, DB_USER, DB_PASS, DB_NAME MySQL 連接資訊
AUTH_API_URL 企業認證 API
DIFY_API_URL, DIFY_API_KEY, DIFY_STT_API_KEY Dify 服務配置
JWT_SECRET JWT 簽名密鑰
ADMIN_EMAIL 管理員郵箱

前端環境變數 (client/.env)

變數 說明 預設值
VITE_API_BASE_URL 後端 API 地址 http://localhost:8000/api
WHISPER_MODEL Whisper 模型大小 medium
WHISPER_DEVICE 執行裝置 (cpu/cuda) cpu

部署

本地開發

./start.sh start

生產環境

詳細部署說明請參考 DEPLOYMENT.md

API 文件

啟動後端後訪問:

專案結構

backend/
├── app/
│   ├── main.py           # FastAPI 應用入口
│   ├── config.py         # 環境變數配置
│   ├── database.py       # 資料庫連接
│   ├── models.py         # 資料模型
│   └── routers/          # API 路由
│       ├── auth.py       # 身份驗證
│       ├── meetings.py   # 會議 CRUD
│       ├── ai.py         # AI 摘要/STT
│       └── export.py     # Excel 匯出

client/
├── src/
│   ├── main.js           # Electron 主程序
│   ├── preload.js        # 預載腳本
│   ├── index.html        # 主頁面
│   └── services/
│       └── api.js        # API 客戶端

sidecar/
├── transcriber.py        # Whisper 轉寫服務
└── requirements.txt      # Python 依賴

授權

Internal Use Only

Description
No description provided
Readme 682 KiB
Languages
Python 42.7%
HTML 18.1%
Shell 13.9%
JavaScript 13.8%
Batchfile 7.1%
Other 4.4%