Skip to content

cesarwillymc/AnimeApp

Repository files navigation

CESAR CANAZA

Introducing a dynamic mobile application that seamlessly integrates GraphQL services to provide you with a wealth of information about Rick and Morty. Powered by an impressive array of modern technologies including Jetpack Compose, Dagger Hilt, JUnit, Split IO, and much more, this app delivers an immersive experience like no other. Explore the Rick and Morty universe with ease and discover the future of mobile app development!

Find me at:

Facebook
LinkedIn

Contact me:

Email

Technical Stack

Technology Logo
GitHub GitHub Logo
Coil Coil Logo
Dagger Hilt Dagger Hilt Logo
JUnit JUnit Logo
Jetpack Compose Jetpack Compose Logo
Proguard R8 Proguard R8 Logo
Room Room Logo
Split IO Split IO Logo
GraphQL GraphQL Logo

Image of application

Screenshot Title Technology Description
Screen Menu Screen Menu GraphQL, ViewModel, Coroutine, Hilt, UnitTest, ApolloTest, RootBeat, Security, Pager This screen consume services of apollo and bring all the person each 20 items
Screen Detail Screen Detail GraphQL, ViewModel, Coroutine, Hilt, UnitTest, Room, Split IO This screen bring the data of the database or by the service, this logic is in the domain. After to get the information print the screen with the information of the character
Screen Favorite Screen Favorite Room, ViewModel, Coroutine, Hilt, UnitTest, Room, Split IO In this screen we get the data from Room
Screen Favorite Mark Screen Favorite Mark GraphQL, ViewModel, Coroutine, Hilt, UnitTest, Room, Split IO For saving the data using Room
Screen Split IO Screen Split IO Split IO This screen is managed by SPLIT IO using the concept FEATURE FLAGGING
Github Workflow Github Workflow Github We configurate manually the workflows in github in the directory .github/Workflows/cd.yml
Split IO SPLIT IO Split IO Configuration of the flag in split io
Split IO SPLIT IO Split IO Configuration of the flag in split io

Configuration:

Local.properties

Add this line

url_graphql=https://rickandmortyapi.com/graphql
name_database=your_name_database
split_io_key = your_split_io_key
feature_flag= anime_app_split

Gradle Java

Go to Gradle JDK and change to Java17

Java

References: