An Android client that merges multiple space-related APIs into a single, simple application. Built with Jetpack Compose and Kotlin, based on a mixture of Clean Architecture and MVVM.
JetSpacer follows Clean Architecture overall, but in some cases, I chose not to implement Use Cases due to the simplicity of the logic involved. Instead, I used a more straightforward MVVM approach in those situations to avoid over-engineering.
Custom pagination implementation is used in the APOD Archive
, Mars Gallery
, and Headlines
to
prevent pulling everything at once.
JetSpacer allows you to search through APOD, Mars Rover Photos, EPIC, and the NASA Image Library. By default, an API key is provided, but you can use your own, which you can obtain here after signing up: https://api.nasa.gov/#signUp.
The bookmarking feature is available for APOD and Mars Rover Photos, and caching is implemented for
Headlines
—you can clear the cache and local database at any time.
This project is licensed under the MIT License.