A privacy-first, offline PDF utility for Android
--- ## ๐ฑ Get it on Android > Offline ยท Privacy-first ยท No account required --- ## โจ Features ### ๐ PDF Management - **Merge PDFs** โ Combine multiple PDF files into a single document - **Split PDF** โ Split into multiple files or specific page ranges - **Compress PDF** โ Reduce file size while maintaining quality - **Reorder Pages** โ Visual drag-and-drop page reordering - **Rotate Pages** โ Rotate specific pages or entire documents - **Extract Pages** โ Extract specific pages to create new PDFs - **Delete Pages** โ Remove unwanted pages ### ๐ Conversion Tools - **Images to PDF** โ Create PDFs from gallery images - **PDF to Images** โ Convert PDF pages to high-quality images (JPG/PNG/WebP) - **HTML to PDF** โ Direct webpage to PDF conversion - **Scan to PDF** โ Camera-based document scanning with automatic edge detection ### โ๏ธ Editing & Annotation - **Annotate** โ Highlight, draw, and markup PDFs with custom Canvas layering - **Sign PDF** โ Add digital signatures to documents - **Fill Forms** โ Complete PDF forms on the go - **Flatten PDF** โ Make forms and annotations permanent ### ๐ Privacy & Security - **Lock PDF** โ Password-protect your files - **Unlock PDF** โ Remove passwords (with valid password) - **Watermark** โ Add text or image watermarks - **All processing on-device** โ No cloud, no servers - **No internet permission** โ Completely offline capable - **No data collection or tracking** ### ๐ค OCR & Text - **Extract Text** โ Pull text content from PDF pages - **ML Kit OCR** โ Play Store flavor (on-device, smaller APK) - **Tesseract OCR** โ F-Droid and opensource flavors (100% open source) ### ๐ผ๏ธ Image Tools - **Compress Images** โ Optimize file sizes - **Resize Images** โ Change dimensions - **Format Conversion** โ JPG, PNG, WebP - **Remove Metadata** โ Strip EXIF data for privacy --- ## ๐๏ธ Build Flavors | Flavor | OCR Engine | Ads | Firebase | Distribution | |--------|-----------|-----|----------|--------------| | `playstore` | ML Kit | No | No | Google Play | | `fdroid` | Tesseract | No | No | F-Droid (pending) | | `opensource` | Tesseract | No | No | GitHub Releases | All flavors are **privacy-first** with no ads, no analytics, and no proprietary dependencies except ML Kit in the Play Store flavor. --- ## ๐ ๏ธ Tech Stack | Category | Technology | |----------|------------| | **Language** | Kotlin 100% | | **UI Framework** | Jetpack Compose (Material Design 3) | | **Architecture** | MVVM + Clean Architecture | | **PDF Processing** | PdfBox-Android, Android PdfRenderer | | **Annotations** | Custom Canvas + BlendMode layering | | **OCR (Play Store)** | Google ML Kit | | **OCR (F-Droid / Opensource)** | Tesseract (tesseract4android) | | **Camera** | CameraX | | **Images** | Coil, Glide, uCrop | | **Database** | Room | | **Preferences** | DataStore | | **Async** | Coroutines & Flow | | **Build** | Gradle + KSP | --- ## ๐ Getting Started ### Prerequisites - Android Studio Hedgehog or newer - JDK 17+ - Android SDK 26+ ### Build ```bash # Clone the repository git clone https://github.com/Karna14314/Pdf_Tools.git cd Pdf_Tools # Play Store flavor (ML Kit OCR) ./gradlew assemblePlaystoreRelease # F-Droid flavor (Tesseract OCR, no proprietary deps) ./gradlew assembleFdroidRelease # Opensource flavor (fully FOSS) ./gradlew assembleOpensourceRelease ``` --- ## ๐ฆ Download | Platform | Link | Notes | |----------|------|-------| | Google Play | [Install](https://play.google.com/store/apps/details?id=com.yourname.pdftoolkit) | Stable, auto-updates | | GitHub Releases | [Download APK](https://github.com/Karna14314/Pdf_Tools/releases) | Opensource flavor, manual install | | F-Droid | Coming soon | Under review | --- ## ๐ค Contributing Contributions are welcome! Please feel free to submit a Pull Request. 1. Fork the repository 2. Create a feature branch (`git checkout -b feature/amazing-feature`) 3. Commit your changes (`git commit -m 'feat: add amazing feature'`) 4. Push to the branch (`git push origin feature/amazing-feature`) 5. Open a Pull Request against `master` **Important:** The F-Droid and opensource flavors must remain free of proprietary dependencies. Any new dependencies must be compatible with the F-Droid inclusion policy. See [open issues](https://github.com/Karna14314/Pdf_Tools/issues) for feature requests and bug reports. --- ## ๐ค Maintainer **Narisetti Chaitanya Naidu** GitHub: [@Karna14314](https://github.com/Karna14314) --- ## ๐ License Copyright ยฉ 2026 Narisetti Chaitanya Naidu Licensed under the Apache License, Version 2.0 See [LICENSE](LICENSE) for full text.