update readme

This commit is contained in:
tapframe 2026-05-13 00:26:48 +05:30
parent f8320433d0
commit 3c7b86af28

View file

@ -1,6 +1,6 @@
<div align="center">
<img src="https://github.com/tapframe/NuvioTV/blob/main/assets/brand/app_logo_wordmark.png" alt="Nuvio" width="300" />
<img src="https://github.com/tapframe/NuvioTV/blob/main/assets/brand/app_logo_wordmark.png" alt="Nuvio Desktop" width="300" />
<br />
<br />
@ -11,62 +11,66 @@
[![License][license-shield]][license-url]
<p>
A modern media hub for Android and iOS built with Kotlin Multiplatform and Compose Multiplatform.
Nuvio Desktop is a modern desktop media hub built with Kotlin Multiplatform and Compose Multiplatform.
<br />
Stremio addon ecosystem • Cross-platform
macOS in development • Windows coming later • Stremio addon ecosystem
</p>
</div>
## 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.
Nuvio Desktop brings the Nuvio media experience to desktop with a Compose Multiplatform interface, profile-aware library flows, watch progress, collection tools, and Stremio addon ecosystem integration.
The mobile app is built from a single shared codebase in [composeApp](./composeApp), with native platform entry points for Android and iOS.
The current desktop version is focused on macOS and is still in development. Windows support is planned for a later stage.
## Status
- macOS: active development.
- Windows: planned, not available yet.
## Installation
### Android
Download the latest Android build from [GitHub Releases](https://github.com/NuvioMedia/NuvioMobile/releases/latest).
### iOS
- [TestFlight](https://testflight.apple.com/join/u4y7MHK9)
There is no stable public desktop release yet. macOS builds are currently intended for development and testing from source.
## Development
```bash
git clone https://github.com/NuvioMedia/NuvioMobile.git
cd NuvioMobile
./scripts/run-mobile.sh android
# or
./scripts/run-mobile.sh ios
git clone https://github.com/NuvioMedia/NuvioDesktop.git
cd NuvioDesktop
./gradlew :composeApp:desktopRun
```
### 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.
- `composeApp/src/desktopMain/` contains desktop-specific integrations.
- `MPVKit/` contains the macOS native playback bridge built on MPVKit and libmpv.
- `iosApp/` remains in the tree for shared project history and configuration used by the codebase.
Useful commands:
```bash
./gradlew :composeApp:assembleDebug
./gradlew :composeApp:compileKotlinIosSimulatorArm64
./scripts/build-distribution.sh
./gradlew :composeApp:compileKotlinDesktop
./gradlew :composeApp:desktopRun
./gradlew :composeApp:packageReleaseDmg
```
Versioning is driven from `iosApp/Configuration/Version.xcconfig`, which is used as the shared source of truth for both iOS and Android builds.
The macOS player bridge is built automatically for desktop run tasks. To build it directly:
```bash
cd MPVKit
swift build -c release --product DesktopMPVBridge
```
Versioning is currently driven from `iosApp/Configuration/Version.xcconfig`, which is used as the shared source of truth by the build.
## Legal & DMCA
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 Desktop 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.
Nuvio Desktop 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](https://nuvioapp.space/legal).
@ -75,27 +79,26 @@ For comprehensive legal information, including our full disclaimer, third-party
- Kotlin Multiplatform
- Compose Multiplatform
- Kotlin
- AndroidX Media3
- AVFoundation and native iOS integrations
- Swift
- MPVKit, libmpv, and FFmpeg
## Star History
<a href="https://www.star-history.com/#NuvioMedia/NuvioMobile&type=date&legend=top-left">
<a href="https://www.star-history.com/#tapframe/NuvioDesktop&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=NuvioMedia/NuvioMobile&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=NuvioMedia/NuvioMobile&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=NuvioMedia/NuvioMobile&type=date&legend=top-left" />
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=tapframe/NuvioDesktop&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=tapframe/NuvioDesktop&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=tapframe/NuvioDesktop&type=date&legend=top-left" />
</picture>
</a>
<!-- MARKDOWN LINKS & IMAGES -->
[contributors-shield]: https://img.shields.io/github/contributors/NuvioMedia/NuvioMobile.svg?style=for-the-badge
[contributors-url]: https://github.com/NuvioMedia/NuvioMobile/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/NuvioMedia/NuvioMobile.svg?style=for-the-badge
[forks-url]: https://github.com/NuvioMedia/NuvioMobile/network/members
[stars-shield]: https://img.shields.io/github/stars/NuvioMedia/NuvioMobile.svg?style=for-the-badge
[stars-url]: https://github.com/NuvioMedia/NuvioMobile/stargazers
[issues-shield]: https://img.shields.io/github/issues/NuvioMedia/NuvioMobile.svg?style=for-the-badge
[issues-url]: https://github.com/NuvioMedia/NuvioMobile/issues
[license-shield]: https://img.shields.io/github/license/NuvioMedia/NuvioMobile.svg?style=for-the-badge
[license-url]: https://github.com/NuvioMedia/NuvioMobile/blob/main/LICENSE
[contributors-shield]: https://img.shields.io/github/contributors/tapframe/NuvioDesktop.svg?style=for-the-badge
[contributors-url]: https://github.com/tapframe/NuvioDesktop/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/tapframe/NuvioDesktop.svg?style=for-the-badge
[forks-url]: https://github.com/tapframe/NuvioDesktop/network/members
[stars-shield]: https://img.shields.io/github/stars/tapframe/NuvioDesktop.svg?style=for-the-badge
[stars-url]: https://github.com/tapframe/NuvioDesktop/stargazers
[issues-shield]: https://img.shields.io/github/issues/tapframe/NuvioDesktop.svg?style=for-the-badge
[issues-url]: https://github.com/tapframe/NuvioDesktop/issues
[license-shield]: https://img.shields.io/github/license/tapframe/NuvioDesktop.svg?style=for-the-badge
[license-url]: https://github.com/tapframe/NuvioDesktop/blob/main/LICENSE