Skip to content
 
 

Repository files navigation

logo

Summary Expressive

Discord GitHub License GitHub Release Google Play Store

ChatGPT Google Gemini Claude Ollama Mistral AI Deepseek

A modern, BYOK and FOSS android app to summarize videos(YouTube, BiliBili), articles, images and documents with AI/LLM.

MAD: pure Kotlin + Jetpack Compose + M3 Expressive

📱 Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

🔗 Downloads

Get it on Github Google Play badge

Minimal Android version: 13

GitHub Release

There are 2 releases available:

  • standalone which includes ML model to recognize text from image, it got larger package size.

  • gms which allows user to download the model from Google Play Services, but GMS required.

Play Store

The Play Store release bundled with gms version. This package is signed by Google managed key for simplicity, which means it's not compatible to update in Google Play Store if you installed a GitHub package previously.

📖 Features

  • Summarize multiple media types
media supported types
Video (Link) YouTube, BiliBili
Document MS Word, PDF
Image Jpg, Png, Webp (Latin only for now)
Text Article link, Plain text
  • Multiple LLM providers supported

    • OpenAI ChatGPT
    • Google Gemini
    • Anthropic Claude
    • Alibaba Qwen
    • DeepSeek
    • Mistral
    • OpenRouter
    • Ollama
    • AWS Bedrock
    • Custom OpenAI-compatible endpoints
  • Custom Model Management: Add, edit, delete, and drag-and-drop reorder models per provider with fallback to Koog defaults

  • Quick Model Switcher: Easily switch providers and active models on the Home screen following your custom configured order

  • Material 3 Expressive UI: Engaging and easier to use, light/dark theme and dynamic color theme

  • Instant summarize via share sheet or text selection toolbar: Convenient to trigger summarization, show result in overlay

  • Configurable LLM settings: Custom API keys, base URLs, prompt customization, and summary lengths

  • Text to speech for the summaries with multilingual and speed adjustment support

  • History search

🏗️ Architecture

The app follows Google's official Android Architecture Recommendations and Modern Android Development (MAD) best practices:

  • Layered Architecture:
    • UI Layer: Built with Jetpack Compose and Material 3 Expressive, powered by ViewModels exposing reactive StateFlow and following Unidirectional Data Flow (UDF).
    • Domain & Model Layer (model/, exception/): Pure domain models and centralized custom exceptions decoupled from UI and data layers.
    • Data Layer (data/): Repositories act as the Single Source of Truth (SSOT), encapsulating Room SQLite DB, ProtoBuf DataStore, Ktor network client, and Koog LLM engine.
  • Dependency Injection: Powered by Dagger Hilt for loose coupling and testability.
  • Asynchronous Operations: Kotlin Coroutines + Flow for reactive, main-safe async streams.

🌟 Credits

About

A modern, BYOK and FOSS android app to summarize videos(YouTube, BiliBili), articles, images and documents with AI/LLM

Topics

Resources

Stars

211 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages