Skip to content

Explore the fascinating sky objects - sky gallery provided by NASA, Astronomy Picture of the Day (APOD) API

Notifications You must be signed in to change notification settings

wojtekkula3/DeepskyApp

Repository files navigation

🚀 Deepsky App - What is this project about?

The application is created for people who is interested in astronomy discoveries. Every day the new picture related to astronomy is popping up thanks to NASA - APOD service. In addition, every picture is presented with an explanation and title describing what is show no the user. Also, when some pictures has copyright data to it, application shows it.

"Picture of The Day" is available for 24h, but we can preserve it in the local storage by adding them to "The Favourite" list.

Astronomy Picture of the Day (APOD) is originated, written, coordinated, and edited since 1995 by Robert Nemiroff and Jerry Bonnell. The APOD archive contains the largest collection of annotated astronomical images on the internet. In real life, Robert and Jerry are two professional astronomers who spend most of their time researching the universe. Robert is a professor at Michigan Technological University in Houghton, Michigan, USA, while Jerry is a scientist at NASA's Goddard Space Flight Center in Greenbelt, Maryland USA.

How the design looks like?

Picture of the day screen:

     

My Favourite screen and one selected item:

     

What technologies was used?

To implement that project Android and Kotlin language was used with min. SDK 24 (Android 7.0). The program uses Navation Component with NavGraph and BottomNavigationView. Glide library was used to load the photo from the APOD API and from the local datasource. To zoom-in and out the picture the project use PhotoView library and widget (source: https://github.com/Baseflow/PhotoView).

With the use of Clean Architecture and MVVM the presentation, logic and database layers are separated. The data layer has two sources - APOD API handled by Retrofit, and local database implemented by Room Database.

In this project you can also find TypeConverter provided by Room Database which converts Bitmap from the given API to the ByteArray type in which the pictures are saved in local database. The other direction is also done.

Other technologies that was used: LiveData, LiveEvent, Timber, Hilt (Dependency Injection)

Who is the author?

👨‍💻 Implemented by: Wojciech Kula
🌌 Powered by: NASA-APOD

About

Explore the fascinating sky objects - sky gallery provided by NASA, Astronomy Picture of the Day (APOD) API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages