7d3fc72bd2a8acdebfae0bb098506735aee31afd
- 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>
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
生產環境
- 後端獨立部署: 參考 docs/1panel-deployment.md
- 前端打包分發:
cd client && npm run build
詳細部署說明請參考 DEPLOYMENT.md
API 文件
啟動後端後訪問:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
專案結構
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
Languages
Python
42.7%
HTML
18.1%
Shell
13.9%
JavaScript
13.8%
Batchfile
7.1%
Other
4.4%