Skip to content

NASA Pictures App is an android app that displays awesome pictures parsed from a json file.

Notifications You must be signed in to change notification settings

segunfrancis/NASA-Pictures-App

Repository files navigation

NASA-Pictures-App

Welcome 👋

NASA Pictures App is an android app that displays awesome pictures parsed from a json file.

It is written 100% in Kotlin with both unit and integrated tests.🙂

Languages, libraries and tools used

Requirements

Installation

  • To run this code, clone this repository using this command git clone https://github.com/segunfrancis/NASA-Pictures-App.git
  • Import into android studio
  • Build the project and run on an android device or emulator

Architecture

The architecture of the project follows the principles of Clean Architecture and MVVM. Here's how the project implements it:

The app when run will show you a simple list of awesome pictures parsed from a json file.

Drawing Drawing

Let's look at each of the architecture layers and the role each one plays :)

architecture

App module

This layer makes use of the Android Framework and is used to create all of our UI components to display inside of the Main Activity. This layer contains the views(activities and fragments) and the ViewModel. The ViewModel receives its data from the use cases of the domain layer and then supplies the views.

Domain module

The domain layer responsibility is to simply contain the UseCase instance used to retrieve data from the Data layer and pass it onto the Presentation layer.

Data Module

The Data layer is our access point to external data layers and is used to fetch data from multiple sources (examples are cache and network). In this case, it gets data from the local source only. It contains an implementation of the Repository.

Local Module

The local layer contains the business logic that converts the JSON to a list of data that we can use. It contains Room database implementation for storing of pictures that has been added to bookmark. There is also a preference helper class that manages the entire shared preference of this application.

Screens

    Screen3 Screen1 Screen2 Screenshot

Appreciation

Author

About

NASA Pictures App is an android app that displays awesome pictures parsed from a json file.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages