100% Offline-First, Private PDF Studio built with Compose Multiplatform & Apple-style Liquid Glass UI
- π‘οΈ 100% Offline & Private: Zero network permissions requested. Your documents never leave your device.
- πͺ Signature Liquid Glass UI: Built with real-time GPU shaders (Kyant Backdrop) featuring optical lens refraction, chromatic aberration (RGB channel splitting), and touch-following glow.
- π§ Floating Liquid Glass Dock: iOS-inspired bottom navigation dock with spring-animated sliding selection indicator.
- π End-to-End PDF Merge: Combine multi-page PDFs with custom drag-and-drop reordering and memory-efficient streaming.
- π² System Intent Filters: Open or share PDFs directly from WhatsApp, Telegram, Files, or Downloads into Roxy PDF Toolkit.
- β‘ 3 Hardware Tiers:
- Tier 3 (Android 13+): Full AGSL RuntimeShader lens curvature and chromatic aberration.
- Tier 2 (Android 12): RenderEffect hardware blur + vibrancy boost.
- Tier 1 (Android 11-): 60fps translucent fallback for budget hardware.
Roxy PDF Toolkit follows a clean, modular architecture separating common UI from platform PDF engines:
roxy-pdf-toolkit/
βββ androidApp/ # Android Application entry point
β βββ src/main/AndroidManifest.xml # Intent filters, zero internet permission
β βββ src/main/kotlin/com/roxy/pdftoolkit/
β βββ RoxyApplication.kt # PDFBox & Koin initialization
β βββ RoxyMainActivity.kt # Edge-to-edge Compose host & SAF handlers
β
βββ composeApp/ # Shared Multiplatform module
βββ commonMain/ # 100% Platform-Agnostic UI & Engine Interface
β βββ kotlin/com/roxy/pdftoolkit/
β βββ ui/
β β βββ theme/ # RoxyTheme, RoxyColor, RoxyType, RoxyMeshBackground
β β βββ glass/ # RoxyLiquidGlass, RoxyTier, RoxyGlassInteraction, RoxyGlassCard
β β βββ navigation/ # RoxyGlassNavBar, RoxyNavDestination
β β βββ scaffold/ # RoxyToolScaffold, RoxyToolHeader
β β βββ home/ # RoxyHomeScreen, RoxyToolCard
β β βββ tools/merge/ # RoxyMergeToolScreen, RoxyMergeViewModel, RoxyMergeState
β βββ engine/ # RoxyPdfEngine interface, RoxyPdfDocument, RoxyOperationResult
β βββ di/ # RoxyCommonModule (Koin)
β
βββ androidMain/ # Android Platform Implementations
βββ kotlin/com/roxy/pdftoolkit/
βββ engine/ # RoxyAndroidPdfEngine, RoxyPdfRendererWrapper
βββ saf/ # RoxySafFilePicker, RoxySafFileSaver
βββ tier/ # RoxyDeviceTierDetector
βββ di/ # RoxyAndroidModule (Koin)
- Open project in Android Studio Meerkat / Ladybug (or IntelliJ IDEA).
- Sync Gradle dependencies.
- Run
:androidAppon an Android device or emulator (Android 8.0+ / API 26+).
Licensed under the Apache License 2.0.