A native macOS application for reading PDFs with integrated note-taking and AI assistance.
- PDF Viewer: Native PDFKit integration for smooth PDF rendering
- Markdown Editor: Real-time note-taking with auto-quote functionality
- Auto-Quote: Highlight text in PDF and it automatically appears in your notes with citation
- AI Sidebar: Chat interface for quick AI assistance (integration ready)
- macOS 12.0 or later
- Swift 6.0+
# Build the project
make build
# Run in development mode
make run
# Create production app bundle
make release
# Clean build artifacts
make clean- Run
make runor open the built app - Click "Open PDF" to load a PDF file
- Highlight text in the PDF - it will automatically be quoted in the editor
- Take notes in the middle panel
- Use the AI sidebar for assistance (API integration required)
The app follows MVVM architecture:
- Models: Data structures
- ViewModels: Business logic and state management
- Views: SwiftUI views and AppKit wrappers
Sources/PDFScribe/
├── PDFScribeApp.swift # App entry point
├── Model/ # Data models
├── ViewModel/ # View models
│ ├── AppViewModel.swift
│ ├── PDFViewModel.swift
│ └── EditorViewModel.swift
├── View/
│ ├── MainSplitView.swift # Main layout
│ ├── PDF/ # PDF viewer components
│ ├── Editor/ # Editor components
│ └── Chat/ # AI chat components
└── Services/ # External services (API, etc.)
MIT