Skip to content

About

Uviewer_android - All-in-one media viewer for Android

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

📱 Uviewer (Integrated Viewer for Android)

Vibe Coding Kotlin Android

Uviewer is an all-in-one media viewer for Android that lets you enjoy documents, images (manga), music, and videos in a single app. Beyond a simple viewer, it provides an optimized viewing experience through archive streaming and WebDAV remote server support.

Note: This project was built with Vibe Coding. 🚀


✨ Key Features

📚 Document Viewer

  • Multiple Formats: Support for epub, aozora (Aozora Bunko), txt, md (Markdown), and pdf.
  • Smart Parsing: Full support for Aozora Bunko format, including Ruby text, vertical writing, and emphasis dots (Bouten).
  • Auto Encoding Detection: Automatically detects text encodings like UTF-8, EUC-KR, Johab and Shift-JIS to prevent broken characters.
  • Math Rendering: Full support for KaTeX math expressions (inline and display mode) in Markdown.
  • Custom Themes: White, Sepia, Comfort, Dark, and fully customizable background colors and font settings.

🤖 LLM Text Actions

  • Selection Action: Select text in the document viewer and choose LLM from the Android text-selection menu to explain or transform the selected text.
  • Markdown Responses: LLM responses are rendered with Markdown support in the result overlay, including headings, lists, code blocks, quotes, tables, and links.
  • Provider Support: Google Gemini, Ollama Cloud, OpenCode Go, and OpenCode Zen.
  • Configurable Requests: Set the provider, model name, thinking level, and system prompt from Settings > LLM. Use Load models to fetch the provider's available models and select one, or enter a model name manually.
  • Thinking Controls: Google supports default, minimal (for Gemma models), low, medium, and high. Ollama Cloud supports default, disable, low, medium, and high. OpenCode providers support default, low, medium, and high.
  • Prompt Presets: The built-in explain this word system prompt can be selected directly. Custom system prompts can be saved with a name, selected later, or deleted from the prompt preset menu.
  • Secure API Keys: Provider API keys are stored separately in Android EncryptedSharedPreferences and are not written to regular user preferences.
  • Zen Without a Key: OpenCode Zen sends requests without an Authorization header when no Zen API key is configured. A personal Zen key remains optional and, when entered, is stored encrypted.

🖼️ Image & Manga Viewer

  • Archive Support: Instantly View images inside zip, cbz, rar, and 7z files without extraction.
  • View Modes: Single page, Dual page (LTR/RTL), and Split view.
  • High-Quality Rendering: Image sharpening filters and Zoom Lock functionality.
  • Remote Streaming: Real-time browsing and loading of archives from WebDAV servers without full downloads.

🎬 Media Player

  • Integrated Playback: Powerful video and music playback based on ExoPlayer.
  • Background Playback: Service-based background playback support for music and audiobooks.

🌐 Network & Library

  • WebDAV Support: Integration with private clouds (NAS, Nextcloud, etc.) for seamless file streaming.
  • Library Management: Features for Recent Files, Favorites, and Pinning.
  • Data Security: Secure storage of user settings and history using SharedPreferences and Room DB.

🌍 Supported Languages

  • 🇺🇸 English
  • 🇰🇷 한국어 (Korean)
  • 🇯🇵 日本語 (Japanese)

🛠 Tech Stack

Uviewer is built with the latest Android development technologies for a robust and fast experience.


🚀 Getting Started

Prerequisites

  • Android 8.0 (API Level 26) or higher

📥 Download

You can download the latest version from the Releases Page.

Build & Run

  1. Clone this repository.
  2. Open the project in Android Studio (Ladybug or later recommended).
  3. Sync Gradle and run the app.

🎨 Design Aesthetics

Uviewer follows these design principles to provide a premium user experience:

  • Fluid Animations: Smooth screen transitions and interactions powered by Compose.
  • Full Dark Mode Support: A sleek Dark Mode UI that syncs with system settings.
  • Responsive Layout: Flexible layouts optimized for both phones and tablets.

🛡️ License

This project is distributed under the MIT License. See LICENSE for more information.


💬 A Final Word

"Want to enjoy all your favorite content in one app without complex setups? Uviewer is the answer."

About

Uviewer_android - All-in-one media viewer for Android

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages