Skip to content

PrasoonDhaneshwar/SpaceWalls

Repository files navigation

SpaceWalls

An Android app which fetches a new wallpaper everyday using NASA's service.

Browse through thousands of NASA's archives and learn about the universe.

Schedule wallpaper through these archives, your favorites or a new content everyday.

👇 Download

Click here to download SpaceWalls.

✨App Features:

  • Browse archives from 1995 to present day
  • Download/Share or set as wallpaper with High Quality Images.
  • Change your wallpaper daily with "Wallpaper Scheduler".
  • Browse through your "Favorites" and change the frequency of wallpapers.
  • Support for tablet devices with both portrait and landscape orientations

📸 Screenshots


🔑 NASA APIs

Web content: https://apod.nasa.gov/apod/astropix.html

APOD service: https://api.nasa.gov/


🛠️Libraries and Dependencies

  • Kotlin - First class and official programming language for Android development.

  • Coroutines - To improve performance and overall user experience.

  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.

    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
    • Jetpack navigation - Navigation component helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer.
    • WorkManager - For persistent work in running background tasks while also adhering to power-saving features and best practices like Doze mode
  • Retrofit - A type-safe HTTP client for Android & OkHttp to interpret responses and recover from common connection problems.

  • Universal Image Loader. For loading, listening to progress, caching and displaying images on Android.

  • Glide - 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.

  • Jsoup - Java library for working with real-world HTML.

  • Gson - Convert Java Objects into their JSON representation.

  • Secrets Gradle Plugin for Android. Plugin for providing your secrets securely to your Android project.

  • Dagger-Hilt For Dependency injection (DI)

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

  • Material Components for Android - Modular and customizable Material Design UI components for Android.

  • PhotoView - Easy usable implementation of a zooming Android ImageView.

  • EasyPermissions - Easy usable implementation of a zooming Android ImageView.

About

This application makes a request to NASA's APOD service and displays the content based on any given date.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages