Skip to content

yusuf0405/BookLoverFinalApp

Repository files navigation

A program written entirely in Kotlin using the principles of Clean Architecture according to the MVVM pattern.

PDF reader app for schools, where readers can read pdf e-books and
answer questions about each chapter’s content. Each reader gets scored according
to their answers, reading speed, number of completed book, etc. Includes admin
functions to manage all readers’ data, statistics for all users, add and manage
books

Screens

Animations

Libraries

Android Jetpack

  • ViewBinding View binding is a feature that makes it easier for you to write code that interacts with views.

  • Lifecycle An interface that automatically responds to lifecycle events.

  • Preference Build interactive settings screens without needing to interact with device storage or manage the UI.

  • Navigation Navigation refers to interactions that allow users to navigate through , enter, and exit various parts of the content in your app. Navigation component Android Jetpack helps you navigate, from simple button clicks to more complex templates like application panels and navigation bar. The navigation component also provides a consistent and predictable user interface, adhering to an established set of principles.

  • Room The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.

  • LiveData Data objects that notify views of changes to the underlying database.

  • Kotlin flows In coroutines, a flow is a type that can emit multiple values sequentially, as opposed to suspend functions that return only a single value. For example, you can use a flow to receive live updates from a database.

  • ViewModel Data related to the user interface that is not destroyed when the application is rotated. Easily schedule asynchronous tasks for optimal execution.

DI

  • Hilt Hilt is a dependency injection library for Android that reduces the execution time of manual dependency injection into your project. Performing manual dependency injection requires that you create each class and its dependencies manually, and use containers to reuse and manage dependencies.

Image

  • Glide Glide is a fast and efficient open source media management and image loading framework for Android that wraps media decoding, memory and disk caching, and resource pooling into a simple and easy to use interface.

Network

  • Retrofit2 Type-safe HTTP client for Android and Java.

  • OkHttp HTTP + HTTP/2 client for Android and Java applications.

  • Parse-SDK-Android A library that gives you access to the powerful Parse Server backend from your Android app. For more information about Parse and its features, see the website, getting started, and blog.

Coroutines

  • Kotlin Coroutines Coroutines is a rich library for coroutines developed by JetBrains. It contains a number of high-level primitives with support for coroutines, which are discussed in this guide, including startup, asynchrony, and others.

GitHub Custom Libraries

  • Android Pdf Viewer Library for displaying PDF documents on Android, with animations, gestures, zoom and double tap support. It is based on PdfiumAndroid for decoding PDF files. Works on API 11 (Android 3.0) and higher. Licensed under Apache License 2.0.

  • Circle Image View A fast circular ImageView perfect for profile images. This is based on RoundedImageView from Vince Mi which itself is based on techniques recommended by Romain Guy.

  • Circular Progress View A customisable circular progress view for android.

  • Lingver Lingver is a library to manage your application locale and language.

  • Push Down Animation Click A library for Android developers who want to create "push down animation click" for view like spotify application. :)

  • Maskara A simple way to format text fields without getting affected by input filters.

  • Expandable TextView ExpandableTextView is an Android library that allows developers to easily create an TextView which can expand/collapse just like the Google Play's app description. Feel free to use it all you want in your Android apps provided that you cite this project.

  • Flow Layout Extended linear layout that wrap its content when there is no place in the current line.

  • Pretty Time Social Style Date and Time Formatting for Java

  • Shimmer Shimmer is an Android library that provides an easy way to add a shimmer effect to any view in your Android app.

Releases

No releases published

Packages

No packages published

Languages