Skip to content
Β 
Β 

Repository files navigation

Note

This repository is a feature-rich fork of the original Prism File Explorer project. It integrates premium companion features from NFile (including a Private Wallet, Local FTP Server, and Web Sharing with port-forwarding), replaces the PDF viewer with Jetpack's native androidx.pdf:pdf-viewer-fragment, introduces a custom Compose Excel spreadsheet viewer, integrates the office document layout engine from all-documents-reader, implements split APK bundle installation, a built-in terminal emulator inspired by Xed-Editor, and adds support for Shizuku/root privileged file access.

Prism File Explorer Logo

Prism File Explorer

Platform License Release APK Downloads Stars Forks

A modern, feature-rich, and lightweight file manager for Android, built entirely with Kotlin and Jetpack Compose.

Delivering a seamless file management experience with a beautiful Material Design interface


πŸ“± Screenshots


✨ Key Features

🎨 Modern User Interface & Navigation

  • Jetpack Compose & Material 3: Fully declarative, highly responsive, and beautiful layouts with automatic light/dark theme support.
  • NFile Navigation Drawer: Quick-navigation sidebar for accessing the Dashboard, System Root, Recycle Bin, and server/network configuration wizard.
  • Multi-Tab Layout: Seamlessly open, navigate, and manage multiple folders at once.
  • Intuitive Breadcrumbs: Quick hierarchical folder traversal.

πŸ“ Advanced File Management

  • Comprehensive Operations: Copy, cut, paste, rename, delete, batch select, and inspect detailed properties of files and folders.
  • Interactive Clipboard FAB: An ExtendedFloatingActionButton dynamically shows "Paste here" / "Move here" options for pending clipboard items.
  • Intelligent Duplicate Renaming: Same-folder copy operations automatically bypass directory validation and append a (copy) suffix.
  • Recycle Bin Restore: Preserves the original file paths by writing a metadata.json sidecar, allowing you to restore deleted files to their exact source.
  • Privileged Explorer Mode: Complete root and Shizuku integration to display file sizes, timestamps, and contents count for restricted folders.

πŸ”’ Private Wallet (Vault)

  • Secure PIN Protection: Set up a custom 4-digit PIN with a haptic-feedback keypad to lock your sensitive files.
  • Cryptographic Scrambling: Encrypts and decrypts files using SHA-256 password salting and custom byte XOR-scrambling.
  • Seamless Temporary Viewing: Decrypts files temporarily to the cache for inline viewer viewing and automatically scrubs them on exit.

🌐 Servers & Remote Connections

  • Local FTP Server: Run a background FTP server via a persistent FtpForegroundService with notification-area status controls.
  • Web Sharing Portal: Host an offline directory listing server, support chunked/range media streaming for browser viewing, accept remote POST file uploads, and establish secure public tunnels via SSH client port-forwarding to localhost.run.
  • Remote Connection Wizard: Configure and save connections for FTP, SFTP (via sshj), WebDAV, and SMB/LAN servers.
  • Remote Explorer: Manage remote storages natively, download, upload, create folders, and delete remote files.

πŸ—œοΈ Archive Management

  • Quick Context Actions: Right-click context menus enable rapid extraction of .zip, .7z, and .rar archives.
  • Configurable Compression: Choose password protection (AES-256) and compression scales (Store, Fastest, Fast, Normal, Maximum, Ultra) when creating archives.
  • Encrypted Archive Listing: Decoupled from the UI thread using zip4j, allowing users to enter passwords to list or browse encrypted entries cleanly.
  • Logical Nesting Fix: Browse nested sub-archives without exposing temporary folder paths in breadcrumbs.

πŸ“Ί Premium Built-in Viewers & Editors

  • Jetpack PDF Viewer: Rewritten from legacy PDFBox loading to Jetpack's native androidx.pdf:pdf-viewer-fragment (reducing load times from 6.4s to under 1.5s). Features native text selection, copy-paste, find-in-document search, coordinate-aligned highlights, high-resolution rendering on zoom, page indicator bubble, and a Go-to-Page dialog.
  • Native Excel Spreadsheet Viewer: Renders .xls and .xlsx sheets in a custom Compose-based scrollable grid with coordinate headers (A, B, C... / 1, 2, 3...) and cell borders. Includes filter/sorting controls and tab-based sheet navigation.
  • Embedded Office Layout Engine (Docreader): High-fidelity layout rendering of Word (.doc, .docx) and PowerPoint (.ppt, .pptx) files, powered by the core engine from all-documents-reader.
  • LaTeX Compiler & Editor: Compile LaTeX offline using the built-in Tectonic compiler. Includes search/scroll navigation in the source view.
  • Markdown Viewer: Render markdown syntax, block/inline equations (flutter_math_fork), and search highlights in raw text.
  • HTML Viewer: Switch between styled WebView previews and monospace code editing with search highlights.
  • Enhanced Audio Player: Scan directories, auto-queue tracks, navigate next/prev, and queue tracks interactively using a sliding bottom sheet.
  • Video Player Speed Control: Toggle playback speeds directly from the video interface, implemented brightness and volume gestures.
  • Image Merger: Multi-select images and stitch them vertically or horizontally into a single output JPEG.

πŸ” Smart Search & AI Integrations

  • Auto-Trigger Search: Debounced search-on-type execution immediately fires when query lengths hit 2+ characters.
  • AI Semantic Search: Integrates semantic matching with OCR support and provides similarity scores (e.g. Semantic match score: 92%) shown in search results.

πŸ“¦ Terminal & PRoot Integrations

  • Modular Terminal Stack: Composes terminal-emulator, terminal-view, and link2symlink into a unified codebase.
  • Ubuntu/PRoot Environment: Provisions an isolated Ubuntu container using PRoot with customizable setup scripts.
  • Session Management: Keeps track of active terminal sessions with persistence and quick-reset settings.
  • Editor Workflow Run-Program Flow: Hooks directly into the built-in text editor to execute scripts and programs instantly.

πŸ“¦ System Integrations

  • Split APK Installation: Support for .apks, .xapk, and .apkm split bundles with session install progress indicators.
  • "Open With" History: Bubbles recently used applications to the top of the dialog based on file extensions.
  • Open In New Button: Launch a file directly with alternative system apps via the quick action bar.

πŸ› οΈ Built With

Technology Purpose Version
Kotlin Programming Language 2.2.0
Jetpack Compose Modern Declarative UI Framework 2025.07.00
Android SDK Native Android Platform APIs API 36 (Android 15+)
androidx.pdf Native PDFium-backed document viewer 1.0.0-alpha19
SSHJ SFTP connections and SSH port-forwarding 0.39.0
Zip4j Comprehensive ZIP archive handling & encryption 2.11.5
ZXing Offline QR Code generation 3.5.3
ONNX Runtime Offline AI semantic vector search models 1.22.0
Sora Editor Syntax-highlighted text and code editor 0.23.6

πŸ”¨ Building from Source

Prerequisites

  • JDK: 17 or higher
  • Android SDK: API level 36+
  • Git: For cloning the repository

Build Instructions

  1. Clone the repository:

    git clone https://github.com/techflyers/Prism-File-Explorer.git
    cd Prism-File-Explorer
  2. Build the application: To compile a debugging version or run tests:

    ./gradlew assembleDebug

    To compile the optimized release binaries split by target CPU architecture (ARMv7, ARM64, x86, x86_64):

    ./gradlew assembleRelease
  3. Find the APKs:

    • Universal and CPU-split APKs will be located in app/build/outputs/apk/release/ or app/build/outputs/apk/debug/.

πŸ›‘οΈ Play Protect & Security Scanner Information

Prism File Explorer is distributed directly via GitHub Releases (sideloaded APK). Security scanners or Google Play Protect may present warnings on newly published builds due to advanced developer tools:

  • In-App Linux Terminal (PRoot): An optional user-space Linux environment powered by PRoot (the same class of engine used by Termux). Antivirus engines may flag this with dual-use labels such as Tool.Linux.Proot.1 or hacktool.proot. This is an intentional power-user utility, not a root exploit or trojan.
  • APK Bundle Merge & Install: Merging split APK bundles (.apks / .xapk) produces an installable APK signed on-device with a unique, app-local cryptographic key (never the public AOSP testkey).
  • Internet Sharing Tunnel: Web sharing establishes reverse proxy tunnels using an on-device generated SSH key and Trust-On-First-Use (TOFU) host verification, without baked-in private keys.
  • Privileged Access: Root access is strictly opt-in and is never probed automatically on application startup.

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ Development Guidelines

  • Follow Kotlin coding conventions
  • Write meaningful commit messages

πŸ“„ License

This project is licensed under the GNU General Public License v3.0.

Prism File Explorer - A modern Android file manager
Copyright (C) 2024 Raival-e

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

See the LICENSE file for the full license text.


πŸ’¬ Support & Community

Platform Purpose
GitHub Issues Bug reports, feature requests
GitHub Discussions Community support, questions
Email Private inquiries

⭐ If you find this project useful, please consider giving it a star !

Star History

About

An Enhanced, feature-rich fork of Prism Explorer made with kotlin and java.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages