etonotieno / AniWave

View the top anime and search for anime by an image search

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AniWave

AniWave

AniWave is an anime app used to view and search anime. The app is entirely built using Kotlin and Jetpack Compose.

Running the Project

IDE: Android Studio Giraffe | 2022.3.1+

Build System: Gradle

Build

The app has debug & release build variants. debug is used for normal development workflows while release has R8 turned on. Use the release variant for a real world user journey.

Releases

GitHub Releases

You can find the latest apk in the GitHub Releases section. The latest release can be found here

Appetize

You can run the app on Appetize.io

Features

  1. The app loads the top twenty five anime from Jikan API, an unofficial MyAnimeList API
  2. The list of anime is displayed in a Compose LazyVerticalGrid
  3. A user can search for an anime by uploading a screenshot file. Returns the anime title & episode

Architecture

AniWave follows Google's recommended guide to app architecture. It is divided into two parts:

  1. Data Layer - Repository, Data Sources
  2. UI Layer - Composable Screens, State holders (ViewModel)

UI

The app UI is built with Jetpack Compose Material3 components.

Static Checks

To apply Kotlin style guidance and fix code formatting issues run Static Checks.

Testing

To run the instrumented tests, change the run configuration to Aniwave Instrumented Tests

About

View the top anime and search for anime by an image search

License:Apache License 2.0


Languages

Language:Kotlin 99.9%Language:Shell 0.1%Language:Batchfile 0.1%