MarkReader

A lightweight, offline markdown and code file reader for Android with syntax highlighting and a built-in editor.
Features
Viewing
- π Markdown Rendering - Full CommonMark support including headings, bold, italic, blockquotes, tables, and fenced code blocks
- π¨ Syntax Highlighting - Code files highlighted for dozens of languages via Prism4j (Kotlin, Python, JavaScript, Java, C/C++, HTML, CSS, JSON, YAML, and more)
- π Material You - Dynamic color, dark and light themes, edge-to-edge display
Editing
- βοΈ Built-in Editor - Edit markdown files with a live preview tab; edit code files with syntax-aware display
- π§ Formatting Toolbar - Quick access to bold, italic, headings, code blocks, links, and lists while editing
- πΎ Save & Export - Save edited files in place or export to a new location with Save As
- π Create New Files - Start a new markdown or code file from scratch
App
- π Open from Anywhere - Open files directly from any file manager via the standard share/open intent
- π Privacy First - No ads, no tracking, no analytics
- π‘ Offline - All processing happens locally on your device, no internet required
Screenshots
Download
F-Droid
F-Droid submission is currently in progress. Once approved, MarkReader will be available on F-Droid at com.markreader.
GitHub Releases
Download the latest APK from the Releases page.
Requirements
- Android 7.0 (Nougat) or higher
Permissions
MarkReader requires no special permissions. Files are opened through Androidβs standard content URI system β no storage permission needed.
Building from Source
Prerequisites
- Android Studio Meerkat (2024.3.1) or later
- JDK 17
- Android SDK with API level 35
Build Steps
- Clone the repository:
git clone https://github.com/usamaiqb/mark-reader.git
cd mark-reader
- Open in Android Studio or build from command line:
./gradlew assembleRelease
- The APK will be in
app/build/outputs/apk/release/
Signed Builds
To build a signed release APK, create a keystore.properties file in the project root:
storeFile=path/to/your.keystore
storePassword=your_store_password
keyAlias=your_key_alias
keyPassword=your_key_password
Privacy
MarkReader:
- β
Does NOT collect any personal data
- β
Does NOT require internet access
- β
Does NOT contain ads or tracking
- β
Does NOT share data with third parties
- β
All file processing happens locally on your device
For full details, see the Privacy Policy.
Contributing
Contributions are welcome! Please open an issue or pull request on GitHub.
License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Support
Acknowledgments
Built with:
Changelog
See CHANGELOG.md for version history and changes.
Made with β€οΈ for the open source community