Skip to content

trinityhades/Luna_tvOS

 
 

Repository files navigation

Luna

A modular media player for iOS, tvOS and macOS, under the GPLv3.0 License.

Build and Release IPA Discord Platform

Table of Contents

Why Luna?

Luna has been made to improve speed and stability over the old version, Sora 1 and have a better experience overall.

Features

  • TMDB integration
  • tvOS 17+ support
  • macOS 13+ support
  • iOS & iPadOS 15+ support
  • Customizable Home Sections
  • Custom mpv based video player
  • Chromecast and AirPlay support
  • Bookmarks & Collections for Media Items
  • Support for personal media servers (Jellyfin, Emby)
  • Background playback and Picture-in-Picture (PiP) support
  • External media player support (VLC, Infuse, Outplayer, nPlayer, SenPlayer, VidHub, TracyPlayer)

Installation

You can download Luna using Xcode or using the .ipa file, which you can find in the Nightly build page.

Build & Storage Modes

Luna supports multiple storage backends:

Mode Description Default
CLOUDKIT Uses iCloud/CloudKit for storage TestFlight / AppStore builds
LOCAL Uses local device storage only Default for manual builds & CI

How to control the storage mode

  • Xcode / TestFlight: Configure via Build.xcconfig
  • CI builds: Configure via build.yml. LOCAL is used by default.
  • Manual script builds (ipabuild.sh):
    • You can choose the storage mode via a second argument:
      ./ipabuild.sh <ios|tvos> cloudkit    # uses CloudKit
      ./ipabuild.sh <ios|tvos> local       # uses local storage
      ./ipabuild.sh <ios|tvos>             # uses local storage
  • The script will echo a warning if no storage mode is supplied and will default to LOCAL

Frequently Asked Questions

  1. What is Luna?
    Luna is a modular media player for iOS and macOS, enabling custom Services to play media from user-provided sources.

  2. Is Luna safe?
    Yes, Luna is open-source and prioritizes user privacy. It does not store user data on external servers and does not collect crash logs.

  3. Will Luna ever be paid?
    No, Luna will always remain free without subscriptions, paid content, or any type of login.

  4. How can I get Services?
    Luna does not include any Services by default. You will need to find and add the necessary Services yourself, or create your own.

Acknowledgements

Frameworks:

Misc:

License

This project is licensed under the GNU General Public License v3.0 (GPLv3.0).

Copyright © 2024-2025 cranci. All rights reserved.

Luna is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Luna is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Luna. If not, see <https://www.gnu.org/licenses/>.

Legal

Luna is a media player that does not host or provide any content. Users are responsible for providing their own content.

User Responsibility

  • Users must ensure they have legal rights to any content they use
  • Users are responsible for complying with all applicable laws
  • Users must respect copyright and intellectual property rights

No Liability

The developers assume no responsibility for user actions or content. This software is provided "as-is" without warranties. Users bear full responsibility for their use of the software and any Services.

Services

Luna does not include any Services. Third-party Services are the responsibility of their creators, not the Luna developers.

About

A tvOS version with better interactions

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Swift 99.7%
  • Shell 0.3%