mirror of
https://github.com/tapframe/NuvioStreaming.git
synced 2026-05-16 23:12:12 +00:00
update readme
This commit is contained in:
parent
f8320433d0
commit
3c7b86af28
1 changed files with 46 additions and 43 deletions
89
README.md
89
README.md
|
|
@ -1,6 +1,6 @@
|
||||||
<div align="center">
|
<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 />
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
|
@ -11,62 +11,66 @@
|
||||||
[![License][license-shield]][license-url]
|
[![License][license-shield]][license-url]
|
||||||
|
|
||||||
<p>
|
<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 />
|
<br />
|
||||||
Stremio addon ecosystem • Cross-platform
|
macOS in development • Windows coming later • Stremio addon ecosystem
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## About
|
## 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
|
## Installation
|
||||||
|
|
||||||
### Android
|
There is no stable public desktop release yet. macOS builds are currently intended for development and testing from source.
|
||||||
|
|
||||||
Download the latest Android build from [GitHub Releases](https://github.com/NuvioMedia/NuvioMobile/releases/latest).
|
|
||||||
|
|
||||||
### iOS
|
|
||||||
|
|
||||||
- [TestFlight](https://testflight.apple.com/join/u4y7MHK9)
|
|
||||||
|
|
||||||
## Development
|
## Development
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/NuvioMedia/NuvioMobile.git
|
git clone https://github.com/NuvioMedia/NuvioDesktop.git
|
||||||
cd NuvioMobile
|
cd NuvioDesktop
|
||||||
./scripts/run-mobile.sh android
|
./gradlew :composeApp:desktopRun
|
||||||
# or
|
|
||||||
./scripts/run-mobile.sh ios
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Project Structure
|
### Project Structure
|
||||||
|
|
||||||
- `composeApp/` contains the shared Kotlin Multiplatform and Compose Multiplatform app code.
|
- `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/commonMain/` contains shared UI, features, repositories, and platform-agnostic logic.
|
||||||
- `composeApp/src/androidMain/` contains Android-specific integrations.
|
- `composeApp/src/desktopMain/` contains desktop-specific integrations.
|
||||||
- `composeApp/src/iosMain/` contains iOS-specific integrations.
|
- `MPVKit/` contains the macOS native playback bridge built on MPVKit and libmpv.
|
||||||
- `iosApp/` contains the native Xcode project and iOS entry point.
|
- `iosApp/` remains in the tree for shared project history and configuration used by the codebase.
|
||||||
|
|
||||||
Useful commands:
|
Useful commands:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./gradlew :composeApp:assembleDebug
|
./gradlew :composeApp:compileKotlinDesktop
|
||||||
./gradlew :composeApp:compileKotlinIosSimulatorArm64
|
./gradlew :composeApp:desktopRun
|
||||||
./scripts/build-distribution.sh
|
./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
|
## 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).
|
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
|
- Kotlin Multiplatform
|
||||||
- Compose Multiplatform
|
- Compose Multiplatform
|
||||||
- Kotlin
|
- Kotlin
|
||||||
- AndroidX Media3
|
- Swift
|
||||||
- AVFoundation and native iOS integrations
|
- MPVKit, libmpv, and FFmpeg
|
||||||
|
|
||||||
## Star History
|
## 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>
|
<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: 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=NuvioMedia/NuvioMobile&type=date&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=NuvioMedia/NuvioMobile&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>
|
</picture>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<!-- MARKDOWN LINKS & IMAGES -->
|
[contributors-shield]: https://img.shields.io/github/contributors/tapframe/NuvioDesktop.svg?style=for-the-badge
|
||||||
[contributors-shield]: https://img.shields.io/github/contributors/NuvioMedia/NuvioMobile.svg?style=for-the-badge
|
[contributors-url]: https://github.com/tapframe/NuvioDesktop/graphs/contributors
|
||||||
[contributors-url]: https://github.com/NuvioMedia/NuvioMobile/graphs/contributors
|
[forks-shield]: https://img.shields.io/github/forks/tapframe/NuvioDesktop.svg?style=for-the-badge
|
||||||
[forks-shield]: https://img.shields.io/github/forks/NuvioMedia/NuvioMobile.svg?style=for-the-badge
|
[forks-url]: https://github.com/tapframe/NuvioDesktop/network/members
|
||||||
[forks-url]: https://github.com/NuvioMedia/NuvioMobile/network/members
|
[stars-shield]: https://img.shields.io/github/stars/tapframe/NuvioDesktop.svg?style=for-the-badge
|
||||||
[stars-shield]: https://img.shields.io/github/stars/NuvioMedia/NuvioMobile.svg?style=for-the-badge
|
[stars-url]: https://github.com/tapframe/NuvioDesktop/stargazers
|
||||||
[stars-url]: https://github.com/NuvioMedia/NuvioMobile/stargazers
|
[issues-shield]: https://img.shields.io/github/issues/tapframe/NuvioDesktop.svg?style=for-the-badge
|
||||||
[issues-shield]: https://img.shields.io/github/issues/NuvioMedia/NuvioMobile.svg?style=for-the-badge
|
[issues-url]: https://github.com/tapframe/NuvioDesktop/issues
|
||||||
[issues-url]: https://github.com/NuvioMedia/NuvioMobile/issues
|
[license-shield]: https://img.shields.io/github/license/tapframe/NuvioDesktop.svg?style=for-the-badge
|
||||||
[license-shield]: https://img.shields.io/github/license/NuvioMedia/NuvioMobile.svg?style=for-the-badge
|
[license-url]: https://github.com/tapframe/NuvioDesktop/blob/main/LICENSE
|
||||||
[license-url]: https://github.com/NuvioMedia/NuvioMobile/blob/main/LICENSE
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue