Skip to content

jorgesarabia/api_tv_challenge

Repository files navigation

Series app 💙

This is a Flutter sample application on how to use the TVMaze API.

How to install this project

After cloning the project, run:

cd <path_to_this_project>
flutter pub get
flutter run

How to use it

The application requires that you create an account. Then you are able to:

  • List all of the series contained in the API
  • Search series by name
  • After clicking on a series, you can see a detail screen that shows the episodes listed by season
  • You can add/remove a serie as favorite tapping over the heart icon in the serie detail screen
  • You can search persons and see the series they have participated in
  • You can log out of the app

Technical aspects

In this project, the DDD architecture was implemented and the BLoC pattern was used for state management.

Packages

Package What it solves
sqflite This is a plugin to use SQLite in Flutter. I implement this to store the selected cities and their weather conditions.
flutter_bloc A collection of Widgets that make it easy to integrate blocs and cubits into Flutter
freezed A code generator for unions/pattern-matching/copy. It helps to reduce boilerplate
get_it A simple service locator. It helps to reduce boilerplate and it is used also to manage the DI
injectable A code generator that can be used in conjunction with get_it
path A path manipulation library for Dart.
dio This package contains a set of high-level functions and classes that make it easy to consume HTTP resources.
url_launcher A Flutter plugin for launching a URL. Supports iOS, Android, web, Windows, macOS, and Linux.
shared_preferences Wraps platform-specific persistent storage for simple data (NSUserDefaults on iOS and macOS, SharedPreferences on Android, etc.).

Technical debts

This was a weekend project so there are some features that I was unable to add and it has some technical debts. I name some of them below

... Name Detail
Testing No tests were done. It is advisable to do it!
Theme I did not add a ThemeData to the application

Screenshots

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages