@@ -15,6 +15,7 @@ A powerful desktop application for recording meetings, lectures, and presentatio
1515- ** 👀 Live Preview** - See what you're recording in real-time
1616- ** 🔄 Cross-Platform** - Works seamlessly on Windows, macOS, and Linux
1717- ** 🔒 Privacy-First** - All processing happens locally, no data sent to external servers
18+ - ** ⚡ Automated Setup** - One-command setup for all binary dependencies
1819
1920## 📸 Screenshots
2021
@@ -72,7 +73,77 @@ npm run dev
7273| ** Ollama** | Local AI model for summarization |
7374| ** Python packages** | Speech-to-text processing |
7475
75- ## 🛠️ Installation Guide
76+ ## 🛠️ Setup Guide
77+
78+ ### Automated Setup (Recommended)
79+
80+ The easiest way to set up all binary dependencies:
81+
82+ ``` bash
83+ # Setup for current platform (recommended)
84+ ./setup-binaries.sh
85+
86+ # Or setup for all platforms
87+ ./setup-binaries.sh all
88+
89+ # Or setup for specific platform
90+ ./setup-binaries.sh macos
91+ ./setup-binaries.sh windows
92+ ./setup-binaries.sh linux
93+ ```
94+
95+ ### What the Setup Script Does
96+
97+ #### macOS Setup
98+ - Creates a Python virtual environment in ` python-runtime/ `
99+ - Installs all dependencies from ` requirements.txt `
100+ - Downloads FFmpeg binary to ` ffmpeg-bin/ `
101+
102+ #### Windows Setup
103+ - Downloads Python embeddable package to ` python-runtime-windows/ `
104+ - Sets up pip and prepares for dependency installation
105+ - Downloads FFmpeg binary to ` ffmpeg-bin-windows/ `
106+
107+ #### Linux Setup
108+ - Creates a Python virtual environment in ` python-runtime/ `
109+ - Installs all dependencies from ` requirements.txt `
110+ - Downloads static FFmpeg binary to ` ffmpeg-bin/ `
111+
112+ ### Directory Structure After Setup
113+
114+ After running the setup script, you'll have:
115+
116+ ```
117+ ├── python-runtime/ # macOS/Linux Python environment
118+ ├── python-runtime-windows/ # Windows Python environment
119+ ├── ffmpeg-bin/ # macOS/Linux FFmpeg binary
120+ ├── ffmpeg-bin-windows/ # Windows FFmpeg binary
121+ ├── audio_extractor.py # Python script for audio processing
122+ ├── requirements.txt # Python dependencies
123+ └── setup-binaries.sh # Setup script
124+ ```
125+
126+ ### Windows Post-Setup
127+
128+ After running the Windows setup, manually install Python dependencies:
129+
130+ ``` bash
131+ cd python-runtime-windows
132+ python get-pip.py
133+ Scripts/pip install -r ../requirements.txt
134+ ```
135+
136+ ### Cross-Platform Builds
137+
138+ - Run ` ./setup-binaries.sh all ` to set up binaries for all platforms
139+ - Use the appropriate npm script for your target platform:
140+ ``` bash
141+ npm run build:mac
142+ npm run build:win
143+ npm run build:linux
144+ ```
145+
146+ ## 🛠️ Manual Installation Guide
76147
77148### FFmpeg Setup
78149
@@ -144,6 +215,59 @@ ffmpeg -version
144215ollama list # if installed
145216```
146217
218+ ### Setup Troubleshooting
219+
220+ #### "Python not found" error
221+ - Make sure you've run ` ./setup-binaries.sh ` first
222+ - Check that the Python runtime was created successfully
223+ - Verify the paths in ` transcript.utils.ts ` match your setup
224+
225+ #### "FFmpeg not found" error
226+ - Ensure FFmpeg was downloaded by the setup script
227+ - Check that the FFmpeg binary has execute permissions
228+ - Verify the FFmpeg path is correct for your platform
229+
230+ ### Manual Binary Setup (Alternative)
231+
232+ If the automated setup doesn't work, you can manually set up the binaries:
233+
234+ #### Python Runtime
235+ 1 . Create a virtual environment: ` python3 -m venv python-runtime `
236+ 2 . Activate it: ` source python-runtime/bin/activate ` (macOS/Linux)
237+ 3 . Install dependencies: ` pip install -r requirements.txt `
238+ 4 . Deactivate: ` deactivate `
239+
240+ #### FFmpeg
241+ 1 . Download from [ FFmpeg website] ( https://ffmpeg.org/download.html )
242+ 2 . Extract to ` ffmpeg-bin/ ` directory
243+ 3 . Ensure the binary is executable: ` chmod +x ffmpeg-bin/ffmpeg `
244+
245+ ### Python Dependencies
246+
247+ The app requires these Python packages (from ` requirements.txt ` ):
248+ - ` openai-whisper>=20231117 ` - For speech-to-text conversion
249+ - ` SpeechRecognition>=3.10.0 ` - Alternative speech recognition
250+ - ` pydub>=0.25.1 ` - Audio processing
251+ - ` torch>=2.0.0 ` - Machine learning backend
252+ - ` numpy>=1.24.0 ` - Numerical computations
253+
254+ ### Important Notes
255+
256+ #### Development vs Production
257+
258+ - ** Development mode** : Uses system Python and FFmpeg
259+ - ** Packaged app** : Uses bundled Python runtime and FFmpeg
260+
261+ #### Gitignore
262+
263+ The binary directories are automatically ignored by git:
264+ - ` python-runtime/ `
265+ - ` python-runtime-windows/ `
266+ - ` ffmpeg-bin/ `
267+ - ` ffmpeg-bin-windows/ `
268+
269+ This keeps the repository clean while allowing developers to set up their own binaries.
270+
147271## 🎯 Usage
148272
149273### Basic Recording Workflow
0 commit comments