A local-first, real-time audio transcription and summarization app built with Tauri, React, and Python.
Summy is a local, privacy-respecting tool for real-time audio transcription and summarization. It captures audio from system and microphone inputs, transcribes it using a locally running Whisper model, and generates concise summaries using modern NLP models like BART or T5. Designed for lecture notes, meetings, and personal recordings, Summy operates fully offline to ensure user data privacy.
Please ensure these are present
- Node.js (v16 or higher)
- Python (v3.8 or higher)
- Rust (for Tauri)
- Xcode (full version) (for Tauri)
- cmake
-
Navigate to the server directory:
cd server -
Create and activate a Python virtual environment:
python -m venv venv source venv/bin/activate # On Windows, use: venv\Scripts\activate
-
Install Python dependencies:
pip install -r requirements.txt
-
Run the backend server:
python app.py
This will start the Flask server.
-
Navigate to the frontend directory:
cd frontend -
Install Node.js dependencies:
npm install
-
Run the development server:
npm run tauri dev
This will start the Tauri application with the React frontend.
- The backend server runs on
http://localhost:8178 - The frontend development server will open automatically through Tauri
- Any changes to the frontend code will automatically reload the application
- Backend changes require a server restart
frontend/- Contains the Tauri + React frontend applicationserver/- Contains the Python Flask backendapp.py- Main server filerequirements.txt- Python dependenciessetup.sh- Server setup and run script
If you encounter any issues:
- Make sure all prerequisites are installed
- Ensure the backend server is running before starting the frontend
- Check that ports 8178 is not being used by other applications
- For backend issues, check the Python virtual environment is activated