I have developed an Android application called Autobiography App and I would like to briefly describe its features.
This application includes an "About Me" section where I provide personal information about myself, my interests, skills, and goals. The "Blogs" page displays the titles and descriptions of my blog posts on Medium, which users can read by clicking on them. The "Projects" page showcases my projects' images, descriptions, technologies used, and GitHub links.
Finally, the last page of the application provides links to my social media accounts, enabling users to connect with me on social media.
Autobiography App was developed using the Kotlin programming language and built using Android Studio. My biographical app uses offline-first structure, MVVM and repository pattern, along with popular libraries like Retrofit, Glide, and Room. I also leverage technologies such as LiveData, Flow, ViewBinding, and Databinding. The source code for the project is available on GitHub, allowing any developer to run and modify the project on their own computer.
-
100% Kotlin based + Coroutines and Flow & LiveData
-
Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- A single-activity architecture, using the Jetpack Navigation to manage transactions.
- Lifecycle - perform an action when lifecycle state changes
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- Repository - Located in data layer that contains application data and business logic.
- ViewBinding & DataBinding - allows you to more easily write code that interacts with views.
-
Android Hilt - Dependency Injection Library
-
Retrofit A type-safe HTTP client for Android and Java
-
Gson - A JSON library for Android and Java.
-
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.
-
Room The Room persistence library provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite.
This app uses MVVM (Model View View-Model) architecture