A simple Media Hub
Find a file
AdityasahuX07 9247e6a330
Reorder Download and Playback settings in SettingsRootPage for easy access.
Why this important, in mobile device downloads not directly show its required extra swipe to access downloads since downloads is frequently visited feature than playback setting so this should be above is good to have.
2026-04-19 19:49:27 +05:30
.github adding CONTRIBUTING.md 2026-04-19 18:59:45 +05:30
composeApp Reorder Download and Playback settings in SettingsRootPage for easy access. 2026-04-19 19:49:27 +05:30
Docs/Stremio addons refer kmp init 2026-03-04 09:00:00 +05:30
gradle fix: libass downgrade media3 to 1.8.0 2026-04-09 23:05:13 +05:30
iosApp fix: normalize date formatting in isoCalendarDateOrNull function and update project version 2026-04-19 15:42:13 +05:30
libass-android@c10b71ab8b fix: update addon fetch timeout 2026-04-10 20:09:45 +05:30
mediamp@df33966d7f ref: adjust modal ui 2026-04-19 00:02:20 +05:30
MPVKit@0c01e295f0 feat: disable interactivity for player view controller and improve player destruction logic 2026-03-12 00:15:12 +05:30
scripts feat: add manual play option and update stream loading logic 2026-04-07 14:56:05 +05:30
vendor ref: adjust modal ui 2026-04-19 00:02:20 +05:30
.gitignore feat: in app updater 2026-04-19 01:15:39 +05:30
build.gradle.kts kmp init 2026-03-04 09:00:00 +05:30
CONTRIBUTING.md adding CONTRIBUTING.md 2026-04-19 18:59:45 +05:30
gradle.properties adjust heap 2026-04-15 15:56:44 +05:30
gradlew kmp init 2026-03-04 09:00:00 +05:30
gradlew.bat kmp init 2026-03-04 09:00:00 +05:30
LICENSE update readme 2026-04-19 00:35:34 +05:30
README.md update readme 2026-04-19 00:37:20 +05:30
settings.gradle.kts kmp init 2026-03-04 09:00:00 +05:30

Nuvio

Contributors Forks Stargazers Issues License

A modern media hub for Android and iOS built with Kotlin Multiplatform and Compose Multiplatform.
Stremio addon ecosystem • Cross-platform

About

Nuvio is the current Kotlin Multiplatform rewrite of the original React Native app. It delivers a shared Compose UI for Android and iOS while keeping the playback-focused experience, collection tools, watch progress flows, downloads, and Stremio addon ecosystem integration that shaped the earlier app.

The mobile app is built from a single shared codebase in composeApp, with native platform entry points for Android and iOS.

Installation

Android

Download the latest Android build from GitHub Releases.

iOS

Development

git clone https://github.com/NuvioMedia/NuvioMobile.git
cd NuvioMobile
./scripts/run-mobile.sh android
# or
./scripts/run-mobile.sh ios

Project Structure

  • composeApp/ contains the shared Kotlin Multiplatform and Compose Multiplatform app code.
  • composeApp/src/commonMain/ contains shared UI, features, repositories, and platform-agnostic logic.
  • composeApp/src/androidMain/ contains Android-specific integrations.
  • composeApp/src/iosMain/ contains iOS-specific integrations.
  • iosApp/ contains the native Xcode project and iOS entry point.

Useful commands:

./gradlew :composeApp:assembleDebug
./gradlew :composeApp:compileKotlinIosSimulatorArm64
./scripts/build-distribution.sh

Versioning is driven from iosApp/Configuration/Version.xcconfig, which is used as the shared source of truth for both iOS and Android builds.

Nuvio functions solely as a client-side interface for browsing metadata and playing media provided by user-installed extensions and/or user-provided sources. It is intended for content the user owns or is otherwise authorized to access.

Nuvio is not affiliated with any third-party extensions, catalogs, sources, or content providers. It does not host, store, or distribute any media content.

For comprehensive legal information, including our full disclaimer, third-party extension policy, and DMCA/Copyright information, please visit our Legal & Disclaimer Page.

Built With

  • Kotlin Multiplatform
  • Compose Multiplatform
  • Kotlin
  • AndroidX Media3
  • AVFoundation and native iOS integrations

Star History

Star History Chart