- Notifications
You must be signed in to change notification settings - Fork8
Upnext: TV Series Manager is an MVVM Android app which allows users to be able to view show schedules, popular, trending and most anticipated shows with favorite functionality provided by the Trakt API
License
akitikkx/upnext
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Upnext: TV Series Manager is now officially part of theGoogle Developers Dev Library
NOTE:Upnext: TV Series Manager
is now using Jetpack Compose!
All screens are using ComposeView.
Each area of the app is being gradually converted to this modern UI toolkit.
There are quite a number of changes that need to be done in order to fully migrateUpnext: TV Series Manager
to Jetpack Compose and, therefore, the migration will be gradual. Should you wish to help with this effort, please see the contributing guidelines and code of conduct.
Have you ever been frustrated by your favorite series'production breaks to the point where you find it difficultto keep track of when the series will come back? This app aimsto provide you with that information about the series' next airdate as well as the episode's plot synopsis (if available at thetime).
The app is currently on the Google Play Storehttps://play.google.com/store/apps/details?id=com.theupnextapp
- A Dashboard featuring yesterday, today, and tomorrow's shows
- An Explore screen featuring Popular, Trending, and Most Anticipated Shows courtesy of Trakt
Now you can add a show as a favorite, which will be synced to your Trakt account. All your favorites will be displayed on the Account screen when your Trakt account is connected. You will require a Trakt.tv account first before you can connect it on Upnext: TV Series Manager.
It is important that you ensure that the below are fully setup or the project will not run.
The project is configured to use Java 17. Please ensure that your Android Studio is set to use this andnot the default 1.8 else the project will not build:
Build, Execution, Deployment > Build Tools > Gradle > Gradle JDK
- Ensure that you add your
google-services.json
file to be saved in the app/ directory
local.properties
should be used to contain the relevant keys. Note that this file is added in the.gitignore
to ensure this file is never committed to the repository for security reasons as thesekeys should only be known to you, the developer.Please obtain an API key fromhttps://trakt.tv/ (directions below) in order for the Trakt functionality to work. You willneed to place this key in
local.properties
(seelocal.properties.example
for a sample of how it should be) as follows:
TraktClientID="[your Trakt Client ID key goes here]"TraktClientSecret="[your Trakt Client Secret key goes here]"TraktRedirectURI="[your Trakt redirect URI goes here]"In your Trakt account dashboard https://trakt.tv/oauth/applications: - Add your new application- Once created and on the application view in Trakt e.g https://trakt.tv/oauth/applications/<id> you will find your Client ID and Client Secret- When the user navigates to the Account screen while not logged in they will have the option to authorize Upnext: TV Series Manager on their Trakt account. Once they click on the "Connect to Trakt" button in the app, they will be redirected via Chrome Custom Tabs or Webview using OAuth. A callback URL is required by Trakt for when the user has authorized Upnext. If you want to define your own, just make sure that the <data> tag in AndroidManifest.xml for MainActivity is updated to reflect your chosen callback URL. It is currently defined as the following in AndroidManifest.xml: - host = 'callback' - scheme = 'theupnextapp' If you want to use the above as the callback, then in Trakt use "theupnextapp://callback" as your callback URL
Upnext: TV Series Manager
is an MVVM app built using Kotlin and the following libraries:
- Jetpack Compose
- ViewModel, LiveData, Kotlin Flow
- Jetpack Navigation
- Jetpack Datastore
- Room
- Hilt
- Data Binding
- Chrome Custom Tabs
- Glide
- Firebase Analytics
- Firebase Crashlytics
- Firebase Core
- Firebase Performance Monitoring
- Jsoup
- Kotlin Coroutines
- AndroidX Lifecycle
- Gson
- Leak Canary
- Flexbox
- Retrofit
- OkHttp
- Moshi
> bindings> common > database> di> domain> extensions> network> repository> ui> work|_ MainActivity.kt|_ UpnextApplication.kt
The data safety form has been completed on the Play Store and accepted. Please find the CSV versionhere
MIT License
Copyright (c) 2022 Ahmed Tikiwa
Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.
About
Upnext: TV Series Manager is an MVVM Android app which allows users to be able to view show schedules, popular, trending and most anticipated shows with favorite functionality provided by the Trakt API