Skip to content

kieubaduong/Boka

Repository files navigation

Book Recommendation App

This is an Android application built using Jetpack Compose and follows the principles of Clean Architecture. The app provides a user-friendly interface for browsing and discovering books, as well as personalized book recommendations based on user preferences.

Features

  • User registration and authentication
  • Book search and browsing
  • Personalized book recommendations using content-based and collaborative filtering algorithm
  • Book details with images, tags, descriptions, ratings
  • Bookshelf for managing favorite books

Technologies Used

Project Structure

├── core
├── data
│   ├── model
│   ├── network
│   │   ├── api
│   │   ├── auth
│   │   │   ├── body
│   │   │   └── result
│   └── repository
├── navigation
├── ui
│   ├── MainActivity.kt
│   ├── features
│   ├── common
│   └── theme
└── util

The project follows the Clean Architecture principles, which separates the codebase into layers:

  • core: Contains all type of class using across the application.
  • data: Implements the data access layer + domain layer, including remote data sources, repositories and the business logic.
    • model: Contains data class for the ui consume.
    • body: Contains data class for the body HTTP request.
    • result: Contains data class for the body HTTP result.
  • ui: Implements the presentation layer, including view models and UI screens.
  • navigation: Implements the navigation graph.
  • util: Contains helper method and extensions.
  • features: Contains main screen and viewmodel.

Screenshots

Splash Screen Sign In Home Screen
Book Detail Rated Books Saved Books
Profile

Prerequisites

  • Android Studio Hedgehog Canary 1 (2023.1.1.1) or higher
  • Kotlin 1.8.10 or higher
  • Android minSdk 30
  • Python 3.8

Todo

  • Dependency injection with Dagger & Hilt

Contributors✨


Kieu Ba Duong

Mobile developer
ML researcher

About

Book reading application with recommendation algorithm to suggest personalized book recommendations

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published