Need help with tivi?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

chrisbanes
3.7K Stars 494 Forks Other 2.7K Commits 28 Opened issues

Description

Tivi is a work-in-progress TV show tracking Android app, which connects to Trakt.tv. It is still in its early stages of development and currently only contains two pieces of UI. It is under heavy development.

Services available

!
?

Need anything else?

Contributors list

# 1,185
Java
Kotlin
trakt
Firebas...
2111 commits
# 72,686
Android
Kotlin
monetiz...
trakt
7 commits
# 55,308
Gradle
flex
lyft
carthag...
6 commits
# 25,674
Java
Android
Gradle
Kotlin
6 commits
# 1,051
Kotlin
Java
Android
rsocket
5 commits
# 107,142
Kotlin
trakt
Shell
Android
4 commits
# 203
Java
Kotlin
Android
kotlin-...
4 commits
# 103,002
HTML
Shell
android...
Kotlin
2 commits
# 226,687
Kotlin
corouti...
HTML
Shell
2 commits
# 363,704
Kotlin
trakt
Shell
android...
2 commits
# 3,838
uber
reddit
archite...
hackern...
2 commits
# 104,899
Java
Shell
Kotlin
Android
2 commits
# 38,650
opam
pinned-...
asdf
Angular
1 commit
# 341,477
Kotlin
Shell
trakt
android...
1 commit
# 91,187
sentry
watchos
error-h...
log4j2
1 commit
# 39,401
Kotlin
Java
Shell
trakt
1 commit
# 40,977
Kotlin
Firebas...
Gradle
kotlin-...
1 commit
# 53,316
Kotlin
Shell
trakt
kotlin-...
1 commit
# 200,351
Kotlin
trakt
Android
frp
1 commit
# 13,734
Java
Kotlin
Android
android...
1 commit

Tivi

Tivi 📺 (work-in-progress 👷🔧️👷‍♀️⛏)

This is not an official Google product

Tivi is a work-in-progress TV show tracking Android app, which connects to Trakt.tv.

Download

Android development

Tivi is an app that attempts to use the latest cutting edge libraries and tools. As a summary:

Development setup

First off, you require the latest Android Studio 4.2 Canary to be able to build the app. This is because the project is written in Jetpack Compose (more on that below).

Code style

This project uses ktlint, provided via the spotless gradle plugin, and the bundled project IntelliJ codestyle.

If you find that one of your pull reviews does not pass the CI server check due to a code style conflict, you can easily fix it by running:

./gradlew spotlessApply
, or running IntelliJ/Android Studio's code formatter.

API keys

You need to supply API / client keys for the various services the app uses:

You can find information about how to gain access via the relevant links.

When creating a Trakt API project, you need to set the OAuth redirect uri to

app.tivi.debug://auth/oauth2callback
for debug build types, or
app.tivi://auth/oauth2callback
for release build types.

Once you obtain the keys, you can set them in your

~/.gradle/gradle.properties
:
# Get these from Trakt.tv
TIVI_TRAKT_CLIENT_ID=
TIVI_TRAKT_CLIENT_SECRET=

Get this from TMDb

TIVI_TMDB_API_KEY=

Jetpack Compose

As mentioned above, this project has been migrated to Jetpack Compose. The basic building blocks of the apps are still

Fragment
s, but each fragment's content is implemented in Compose. Some examples of the UI include:

Show details

[source]

Show Details demo

Episode details

[source]

Show Details demo

Account

[source]

Show Details demo

Contributions

If you've found an error in this sample, please file an issue.

Patches are encouraged and may be submitted by forking this project and submitting a pull request. Since this project is still in its very early stages, if your change is substantial, please raise an issue first to discuss it.

License

Copyright 2020 Google LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.