This is a Native Andorid App developed in Jetpack Compose MVVM architecture, To view the Astronomy Picture of the day from NASA
To build this project, you will need to Add new file secrets.properties
and Add the nasaApiKey
like nasaApiKey="KEY_VALUE"
by default, the API KEY is Used from secrets.defaults.properties
, which has a limit of 30 requests per hour
and 50 requests per day
please get the API KEY
from https://api.nasa.gov/
- Kotlin - Official programming language for Android development.
- Jetpack Compose - Jetpack Compose is Android’s modern toolkit for building native UI.
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- Coil Image Loading - An image loading library for Android backed by Kotlin Coroutines.By default, it's already set up for disk caching and will set a max cache size of between 10-250MB depending on the remaining space on the user's device.
- Retrofit- A type-safe HTTP client for Android and Java
- Hilt - Hilt provides a standard way to incorporate Dagger dependency injection into an Android application
- Room - Room provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite
- DataStore - data storage solution that allows you to store key-value pairs or typed objects with protocol buffers
- Navigation -helps in build and structure in-app UI, handle deep links, and navigate between screens
- search for the picture for a date of choice
- create/manage a list of "favorite" listings
- Display date, explanation, Title and the image of the day, if it's a video just show the video thumbnail
- cache information and display last updated information in case of network unavailability.
- Light/dark mode supported, will match with system theme
If you have any feedback, please reach out to me at [email protected]