app: Scaffold Android TV PeerTube client (MVP)

Start the SmartTube-inspired PeerTube TV client as a Kotlin + Compose
for TV app. It targets any PeerTube instance (v1 API), with JTube as
the default, and covers login 0, local/own video listings 1-2, search
3, subscriptions 4, server-backed history 5 and HLS/progressive
playback with watching reports 6.

Password is only used for the OAuth password grant and never stored;
tokens are kept in EncryptedSharedPreferences. Building needs JDK 17+
(see README); the Gradle wrapper is checked in so no local Gradle is
required.
This commit is contained in:
Jeena 2026-10-10 10:20:02 +00:00
commit 59029438ad
40 changed files with 2605 additions and 0 deletions

View file

@ -0,0 +1,4 @@
<resources>
<color name="jtube_primary">#FFCE2B2B</color>
<color name="jtube_background">#FF101010</color>
</resources>

View file

@ -0,0 +1,12 @@
<resources>
<string name="app_name">JTube TV</string>
<string name="destination_videos">Videos</string>
<string name="destination_my_videos">My videos</string>
<string name="destination_channels">Channels</string>
<string name="destination_search">Search</string>
<string name="destination_subscriptions">Subscriptions</string>
<string name="destination_history">History</string>
<string name="error_loading">Something went wrong</string>
<string name="retry">Retry</string>
<string name="empty_list">Nothing here yet</string>
</resources>

View file

@ -0,0 +1,6 @@
<resources>
<style name="Theme.JTubeTV" parent="android:Theme.Material.NoActionBar">
<item name="android:windowBackground">@android:color/black</item>
<item name="android:colorPrimary">@color/jtube_primary</item>
</style>
</resources>