This repository contains "75 Hard Tacker" app source code.
Its purpose being, to quickly demonstrate Android, Kotlin and software development in general. The main focus of this project is:
- Setup and Gradle configuration,
- Clean architecture,
- Clean code,
- Navigation Graphs,
- Light/ Dark theme,
- Best practices,
- In app purchases,
- In app updates,
- All those other must know goodies.
- Architectural Patterns
- Modularization
(Modularize the App Horizontally by Features)
- Navigation Component
(Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app)
- Clean Architecture
(By employing clean architecture, you can design applications with very low coupling and independent of technical implementation details, such as databases and frameworks. That way, the application becomes easy to maintain and flexible to change. It also becomes intrinsically testable.)
- Modularization
- UI Patterns
- Kotlin
- Kotlin
(A modern programming language that makes developers happier)
- Kotlin Symbol Processing
(Kotlin Symbol Processing (KSP) is an API that you can use to develop lightweight compiler plugins. KSP provides a simplified compiler plugin API that leverages the power of Kotlin while keeping the learning curve at a minimum. Compared to kapt, annotation processors that use KSP can run up to 2 times faster)
- Kotlin Coroutines
(Coroutines simplify asynchronous programming by putting the complications into libraries. The logic of the program can be expressed sequentially in a coroutine, and the underlying library will figure out the asynchrony for us)
- Asynchronous Flow
(Suspending functions asynchronously returns a single value, but how can we return multiple asynchronously computed values? This is where Kotlin Flows come in)
- Kotlin
- Android Support
- AndroidX
(A new package structure to make it clearer which packages are bundled with the Android operating system, and which are packaged with your app's APK)
- Android KTX
(Android KTX is a set of Kotlin extensions that is part of the Android Jetpack family)
- Room Persistence Library
(The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite)
- AndroidX
- Android UI
- Material Components
(Modular and customizable Material Design UI components for Android)
- Dark Theme
(Dark theme is available in Android 10 (API level 29) and higher)
- Jetpack Compose
(Jetpack Compose simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs)
- Material Components
- Build
- Gradle Kotlin DSL
(Kotlin language support for Gradle build scripts)
- Gradle Kotlin DSL
⭐
follow__ me for my next creations! 🤩
Please feel free to file an issue for errors, suggestions or feature requests. Pull requests are also encouraged.
**THANK YOU**