BahadirKayis / AnimeList

init commit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Anime List


An android application that uses Jikan API to display Anime. it has been built with Event-Effect-State(EES), BasePaging, Custom Compount View, Repository Pattern, and MVVM pattern as well as Architecture Components.


API Profile

Gif

Screenshots


Tech stack & Open-source libraries

  • Minimum SDK level 24
  • 100% Kotlin based + Coroutines and Flow
  • Android Architecture Components: Collection of libraries that help you design robust, testable, and maintainable apps.
    • A single-activity architecture, using the Navigation: to manage composable transactions.
    • Lifecycle: perform an action when lifecycle state changes
    • ViewModel: Stores UI-related data that isn't destroyed on UI changes.
    • UseCases: Located domain layer that sits between the UI layer and the data layer.
    • Repository: Located in data layer that contains application data and business logic.
  • Dependency Injection: Is a design pattern that facilitates the management of dependencies and the integration of components in a flexible, testable, and maintainable manner
  • Android Hilt: Dependency Injection Library
  • Retrofit: A type-safe HTTP client for Android and Java
  • OkHttp: An HTTP client that efficiently make network requests.
  • Paging3: Used to optimize data flow by breaking down large data sets into smaller pieces and loading them only when needed.
  • Custom Compound View: Is a reusable user interface component that combines multiple existing views or components into a single cohesive unit, simplifying usage and management.
  • Firebase Authentication: is a free service that helps you authenticate users and sign them in to your app.
  • Youtube Player

Architecture

This app uses MVVM (Model View View-Model) architecture

Video

animeList.mp4