/tv-randshow

App to choose a random TV show episode - Made with #Flutter

Primary LanguageDartGNU General Public License v3.0GPL-3.0

TV Randshow website Get it on Google Play

TV Randshow - App to choose a random TV show episode

Tests Deploy Releases Google Play Website Paypal donate

About the project

TV Randshow was created to help choose a random episode from your favorites TV shows. The TV shows database comes from the TMDB and the app saves them in a database on the device. With the list of favorites, you can roll the dice of a TV show to get a random episode.

This project has been built using the Flutter framework, which allows to build an multiplatform app from a single codebase.

Features

  • Save your favorites TV shows
  • Choose a random episode from a single TV show
  • Support to Android and Web
  • Dark mode
  • Support to deeplink https://tvrandshow.com/getRandomEpisode?tvshow=friends
  • Roadmap in public Trello

Build and run

Requirements

  1. Clone repository with 'git clone' command or just download the zip. git clone git@github.com:deandreamatias/tv-randshow.git
  2. Then, download either Android Studio or Visual Studio Code, with their respective Flutter editor plugins. For more information about Flutter installation procedure, check the official install guide.
  3. Install dependencies from pubspec.yaml by running flutter pub get from the project root (see using packages documentation for details and how to do this in the editor).
  4. Get your API Key from TMDB (see this FAQ for more details) and paste in file lib/config/env.dart
  5. (Optional) If you want build to web, do you need follow this steps

Run

CLI Debug: flutter run --flavor dev -t lib/main_dev.dart

Tests

Integration tests (only mobile): flutter drive --driver=test_driver/integration_test.dart --target=integration_test/app_test.dart -d [DEVICE_ID] --flavor dev --dart-define API_KEY=xxxxxxxxxxxxx Unit tests: flutter test --dart-define API_KEY=xxxxxxxxxxxxx

Author

Contributing

If you want to take the time to make this project better, please read the contributing guides first. Then, you can open an new issue, of a pull request.

License

This project is licensed under the GNU GPL v3 License - see the LICENSE file for details.