Unified voice recording and transcription platform for in-person meetings and online video calls
Voice PA is a comprehensive solution for recording and transcribing meetings across multiple platforms. Record in-person meetings via mobile app, capture online meetings from Google Meet and Zoom, and manage all your transcriptions from a centralized web dashboard.
- 📱 One-tap recording for in-person meetings
- 🎙️ Real-time transcription with speaker identification
- 📴 Full offline support with automatic sync
- 🔊 Audio playback synchronized with transcript
- 📄 Export to PDF, TXT, DOCX
- 🌐 Auto-capture Google Meet and Zoom calls
- 💬 Real-time transcription overlay
- 👥 Automatic participant detection
- ☁️ Seamless cloud sync
- 📊 Centralized meeting management
- 🔍 Search and filter transcriptions
- ✏️ Edit and annotate transcripts
- 📈 Analytics and insights
- 🔗 Team collaboration (coming soon)
Voice PA uses a high-performance Rust core library that powers all platforms:
┌─────────────────────────────────────────────────────┐
│ Client Layer │
│ Mobile App │ Extensions │ Web Dashboard │
└─────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ Rust Core Library │
│ Audio Capture │ Transcription │ Diarization │
└─────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ Backend Services │
│ REST API │ WebSocket │ Job Queue │
└─────────────────────────────────────────────────────┘
- Core: Rust (audio processing, transcription)
- Mobile: React Native (iOS & Android)
- Backend: Node.js + TypeScript + Prisma
- Web: Next.js 14 + TypeScript + Tailwind CSS
- Extensions: Chrome Extension Manifest V3
- Database: PostgreSQL + Redis
- Storage: S3-compatible object storage
voice-pa/
├── packages/
│ ├── core/ # Rust core library
│ ├── mobile/ # React Native app
│ ├── backend/ # Node.js backend
│ ├── web-dashboard/ # Next.js dashboard
│ ├── landing/ # Next.js landing page
│ ├── extension-meet/ # Google Meet extension
│ ├── extension-zoom/ # Zoom extension
│ └── shared/ # Shared TypeScript types
├── docs/ # Documentation
└── scripts/ # Build and deployment scripts
- Rust 1.75+ (install)
- Node.js 20+ (install)
- Docker (install)
- Xcode (for iOS development)
- Android Studio (for Android development)
# Clone the repository
git clone https://github.com/your-org/voice-pa.git
cd voice-pa
# Install dependencies
npm install
# Start local services (PostgreSQL, Redis)
docker-compose up -d
# Build Rust core library
npm run build:core
# Setup database
cd packages/backend
npx prisma migrate dev
npx prisma db seed
# Start backend
npm run dev:backend
# In another terminal, start web dashboard
npm run dev:webcd packages/mobile
# iOS
npm run ios
# Android
npm run android# Run all tests
npm test
# Test specific package
cd packages/core && cargo test
cd packages/backend && npm test
cd packages/mobile && npm test- End-to-end encryption for audio files
- GDPR compliant data handling
- SOC 2 Type II certified infrastructure
- Regular security audits
See SECURITY.md for reporting vulnerabilities.
This project is licensed under the MIT License - see LICENSE file for details.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
- 📧 Email: support@voicepa.com
- 💬 Discord: Join our community
- 📖 Docs: docs.voicepa.com
- Core audio processing library
- Mobile app (iOS & Android)
- Browser extensions (Meet & Zoom)
- Web dashboard
- AI-powered meeting summaries
- Action items extraction
- Team workspaces
- Calendar integrations
- 50+ language support
- Video recording
Built with ❤️ by the Voice PA team