A cross-platform application that reads PDF documents aloud using AI-powered text-to-speech technology. Available for both macOS and Windows.
Opra follows a simple three-step process:
- Extract text from your PDF file
- Convert text to speech using AI voices
- Play the audio with progress tracking
PDF → Extract Text → AI Speech → Audio Playback
- Open PDF: Click "Select PDF" or press ⌘O
- Choose pages: Select which pages to read
- Start reading: Click play or press spacebar
- Control: Use play/pause/stop and adjust speed
- Open PDF: Click "Select PDF" or press Ctrl+O
- Choose pages: Select which pages to read
- Start reading: Click play or press spacebar
- Control: Use play/pause/stop and adjust speed
- Cross-Platform: Works on both macOS and Windows
- AI-Powered Voices: High-quality text-to-speech
- Page Selection: Read specific pages or entire document
- Speed Control: Adjust reading speed
- Progress Tracking: See current reading position
- Keyboard Shortcuts:
- macOS: ⌘O (open), Space (play/pause), ⌘S (stop)
- Windows: Ctrl+O (open), Space (play/pause), Ctrl+S (stop)
- macOS 12.0 or later
- PDF files with readable text (not scanned images)
- Windows 10 version 1903 or later
- .NET 8.0 Runtime
- PDF files with readable text (not scanned images)
- Go to the Releases page
- Download the appropriate installer for your platform:
- macOS:
.dmgfile - Windows:
.exeinstaller
- macOS:
- Install and launch the application
The apps are properly code-signed for their respective platforms, so they should install and run without security warnings.
-
Clone this repository:
git clone https://github.com/kekko7072/Opra.git cd Opra -
Build for your platform:
Build everything:
./build.sh all # macOS/Linux build.bat all # Windows
Build specific platform:
./build.sh macos # macOS only ./build.sh windows # Windows only
macOS (using Xcode):
cd macos open Opra.xcodeproj # Build and run in Xcode (⌘R)
Windows (using Visual Studio):
cd windows dotnet build -c Release dotnet run --project Opra
Opra/
├── macos/ # macOS SwiftUI application
│ ├── Opra.xcodeproj
│ └── Opra/
├── windows/ # Windows WinUI 3 application
│ ├── Opra.sln
│ └── Opra/
├── build.sh # Build script (macOS/Linux)
├── build.bat # Build script (Windows)
└── README.md
macOS Development:
- Xcode 14.0 or later
- macOS 12.0 or later
Windows Development:
- Visual Studio 2022 or later
- .NET 8.0 SDK
- Windows 10 SDK (10.0.19041.0 or later)
The project uses a unified build system that supports both platforms:
# Build everything
./build.sh all
# Build specific platform
./build.sh macos
./build.sh windowsThe application uses platform-native implementations:
- macOS: SwiftUI with native PDFKit and AVFoundation
- Windows: WinUI 3 with iText7 and System.Speech
Important: Windows App SDK applications cannot be built on Linux/macOS using Docker due to Windows-specific build tool dependencies.
To build the Windows version:
- Use a Windows machine or VM
- Use GitHub Actions with a Windows runner (recommended for CI/CD)
- Use cloud build services like Azure DevOps with Windows agents