Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Platform Request: react-native-tvos #1994

Open
1 task done
TheUltDev opened this issue Apr 25, 2024 · 3 comments
Open
1 task done

Platform Request: react-native-tvos #1994

TheUltDev opened this issue Apr 25, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@TheUltDev
Copy link

Proposal

Can the https://github.com/react-native-tvos/react-native-tvos platform be added to this project?

Alternatives

Alternatively schemes could be added, I'm unfamiliar with what changes the tvos fork adds, it may be possible to support it in another way.

Implementation Details

I assume tvOS could be implement in a similar was of how visionOS is implemented

Additional Context

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct
@TheUltDev TheUltDev added the enhancement New feature or request label Apr 25, 2024
@TheUltDev TheUltDev changed the title Platform: react-native-tvos Platform Request: react-native-tvos Apr 25, 2024
@kelset
Copy link
Member

kelset commented Apr 26, 2024

Hey there! Thanks for asking - the short answer is similar to the one we gave for the RNWeb issue: "sure, why not".

But of course there are a few considerations that we need to be kept in mind: adding an extra platform always adds complexity, and because we don't use tvOS internally we'd need to have an external owner for this that would make sure to keep RNTA's support up to our standards.

You asking did push us to engage with a some of the key players in the tvOS space and we'll be exploring viability (also given things like the fact that the actual tv OSs ecosystem is much more fragmented and inconsistent than something like the Apple ones), but no promises at this point.

@mojavad
Copy link

mojavad commented Apr 26, 2024

Heya! Just to add on to what @kelset is saying - the fragmentation is quite large in the TV space, so it could include:

  • tvOS
  • Android TV (which also includes the FireOS ecosystem)
  • Tizen (which is web based)
  • WebOS (which is also web based)
  • and many more

The number of OSs is only increasing (for example, Sharp recently announced they're launching their own OS) 😬

Having worked on several RN TV apps, we've found that most large scale TV apps will want to support not just AppleTV and Android TV, but most of the web-based platforms as well.

Effectively, this means that it's a large task to maintain RNTA for all of these (tvOS, Android TV, & RNW).

Out of curiosity, @TheUltDev, which OSs are you particularly interested in?

@TheUltDev
Copy link
Author

TheUltDev commented Apr 26, 2024

@kelset thanks for the prompt reply and the engagement.

@mojavad I was mainly interested in adding tvOS + Android TV in the existing pipeline through https://github.com/react-native-tvos/react-native-tvos.

I do realize there are other tv OSes, but as pointed out they are mostly all web-based. I am handling the web-toolchain differently so it's of little concern. I plan on accomplishing that by supporting multiple wrappers around the RNW build (this could also include Tauri for linux and other unsupported desktop platforms)

I do think the web-based tooling is out-of-scope of this project. That is my speciality so maybe I can contribute it to this project once I'm more familiar with it. For now I'm handling it separately.

For reference, I'm building a cross-platform framework that supports as many platforms as possible:
https://github.com/kat-tax/exo (https://exo.ult.dev)

The web tooling is located here fyi:
https://github.com/kat-tax/exo/tree/master/toolkit/web

I'm currently evaluating RNTA's use-case in building production apps via singleApp mode.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants