https://github.com/swish78/snapscribe
https://github.com/swish78/snapscribe
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/swish78/snapscribe
- Owner: Swish78
- License: mit
- Created: 2024-08-05T13:40:08.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-01-14T11:41:26.000Z (over 1 year ago)
- Last Synced: 2025-04-16T01:50:17.406Z (over 1 year ago)
- Size: 55.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SnapScribe
SnapScribe is a real-time audio transcription and summarization app that leverages machine learning to convert speech to text and summarize key points. Designed for meetings, lectures, interviews, and personal note-taking, SnapScribe provides an efficient way to capture, organize, and review spoken content.
## Features
### Real-Time Audio Transcription
- Converts live audio into text in real-time.
- Supports multiple languages and accents.
- Differentiates between multiple speakers using speaker identification.
### Text Summarization
- Summarizes transcribed text into concise key points.
- Offers options for different summary lengths (e.g., brief, detailed).
- Highlights important phrases and keywords for better context.
### Voice Recognition
- Identifies individual speakers by recognizing their unique voice profiles.
- Annotates transcripts with speaker names for improved clarity.
- Allows users to manage and update their voice profiles.
### Searchable Transcripts
- Enables users to search for specific keywords or phrases within transcripts.
- Provides timestamps for easier navigation through the content.
### Export and Share
- Exports transcripts and summaries to various formats such as PDF and DOCX.
- Allows sharing via email or cloud services for seamless collaboration.
### User Management
- Secure user authentication and profile management.
- Stores and organizes saved transcripts and summaries for easy access.
## Technology Stack
### Frontend
- **React**: For building an interactive user interface.
- **Tailwind CSS**: For modern and responsive design.
- **WebSockets**: To enable real-time communication for live transcription.
### Backend
- **FastAPI**: A high-performance web framework for building APIs.
- **WebSockets**: For real-time data exchange.
- **TensorFlow / PyTorch**: For machine learning models.
- **Hugging Face Transformers**: For transcription, summarization, and voice recognition tasks.
- **pyannote.audio / SpeechBrain**: For speaker identification and voice recognition.
### Database
- **MongoDB** or **PostgreSQL**: For storing user data, transcripts, and voice profiles.
## Installation
### Prerequisites
- Python 3.8 or higher
- Node.js 16 or higher
- npm or yarn
- Virtual environment manager (e.g., venv or conda)
### Steps
1. Clone the repository:
```bash
git clone https://github.com/yourusername/snapscribe.git
```
2. Navigate to the backend directory and install dependencies:
```bash
cd snapscribe/backend
pip install -r requirements.txt
```
3. Navigate to the frontend directory and install dependencies:
```bash
cd ../frontend
npm install
```
4. Start the backend server:
```bash
uvicorn main:app --reload
```
5. Start the frontend development server:
```bash
npm start
```
## Usage
1. Open the application in your browser.
2. Log in or create an account to access features.
3. Upload or provide live audio input for transcription.
4. View real-time transcription and summaries.
5. Manage, search, and export your transcripts and summaries.
## Contributing
We welcome contributions! To contribute:
1. Fork the repository.
2. Create a new branch for your feature or bugfix:
```bash
git checkout -b feature-name
```
3. Commit your changes:
```bash
git commit -m "Add feature-name"
```
4. Push the branch to your fork:
```bash
git push origin feature-name
```
5. Create a pull request on the main repository.
## License
This project is licensed under the [MIT License](LICENSE).
[//]: # (## Acknowledgments)
[//]: # ()
[//]: # (- **OpenAI Whisper** and **Hugging Face Transformers** for their powerful transcription and summarization tools.)
[//]: # (- **pyannote.audio** and **SpeechBrain** for speaker identification support.)
[//]: # (- **FastAPI** and **React** for enabling rapid development of robust web applications.)