68 lines
1.6 KiB
Markdown
68 lines
1.6 KiB
Markdown
# Transcribe
|
|
|
|
A standalone Progressive Web App (PWA) for voice transcription, extracted from canvas-website.
|
|
|
|
## Features
|
|
|
|
- **Two Transcription Modes:**
|
|
- **Web Speech API** - Fast, real-time transcription using browser's built-in speech recognition (Chrome/Edge)
|
|
- **Local Whisper** - Offline-capable transcription using Whisper AI model running entirely in the browser
|
|
|
|
- **PWA Support** - Install on any device, works offline
|
|
- **Simple UI** - Start/stop recording, copy/download transcripts
|
|
- **No Server Required** - All processing happens in the browser
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# Install dependencies
|
|
npm install
|
|
|
|
# Run development server
|
|
npm run dev
|
|
|
|
# Build for production
|
|
npm run build
|
|
```
|
|
|
|
## Docker Deployment
|
|
|
|
```bash
|
|
# Build and run with Docker
|
|
docker compose up -d --build
|
|
|
|
# Or build manually
|
|
docker build -t transcribe-app .
|
|
docker run -p 3000:80 transcribe-app
|
|
```
|
|
|
|
## Runtipi Deployment
|
|
|
|
Copy the contents of the `runtipi/` folder to your Runtipi apps directory:
|
|
|
|
```bash
|
|
cp -r runtipi/* /path/to/runtipi/user-config/transcribe/
|
|
```
|
|
|
|
Or use the pre-built Docker image from GitHub Container Registry.
|
|
|
|
## Browser Compatibility
|
|
|
|
| Browser | Web Speech API | Whisper (Local) |
|
|
|---------|----------------|-----------------|
|
|
| Chrome | Full | Full |
|
|
| Edge | Full | Full |
|
|
| Safari | Partial | Full |
|
|
| Firefox | No | Full |
|
|
|
|
## Tech Stack
|
|
|
|
- React 18 + TypeScript
|
|
- Vite with PWA plugin
|
|
- @xenova/transformers for local Whisper inference
|
|
- Web Speech API for browser-native transcription
|
|
|
|
## License
|
|
|
|
MIT
|