An Android application consuming the GitHub API to search for users on Github, display their followers, following and repositories. The project is built with Compose, MVVM pattern as well as other architectural components and libraries.

Overview

Git App

An Android application consuming the GitHub API to search for users on Github, display their followers, following and repositories. The project is built with Compose, MVVM pattern as well as other architectural components and libraries.

Table of Contents

Installation

This project uses the Gradle build system. To build this project, use the gradlew build command or use "Import Project" in Android Studio.

You can find the latest apk in the Release section, or you can download from here

UserFlow

The app shows a search screen, on the home page with a search bar. A user is able to search for a user using their username. The app displays the user's profile. When a user clicks on the profile, the app navigates to a detail screen, which displays the user's followers, following and repositories. When a user clicks on a repository, they are able to view the repository's description, stars, fork and watchers count and the topics under the repository.

Screenshots

Recording

vid.mp4

Architecture

The app is built using the MVVM architectural pattern. The app has composable screens that communicates to ViewModel which in turn communicates to the usecase which communicates with Repository to get data.

Libraries

  • Jetpack 🚀
    • Viewmodel - Manage UI related data in a lifecycle conscious way
    • Compose - A modern declarative way to build android ui
    • Navigation - Handle everything needed for in-app navigation.
    • ViewModel - Easily schedule asynchronous tasks for optimal execution.
    • Room - Persistence library for Android.
  • Retrofit - Type-safe HTTP client and supports coroutines out of the box. Used for the network calls.
  • Gson - Used to convert JSON to Java/Kotlin classes for the Retrofit
  • Lottie Animation Library - A library for creating animated views and animations.
  • Accompanist Library - A library for building Android apps with the Jetpack Compose framework.
  • okhttp-logging-interceptor
    • logs HTTP request and response data.
  • kotlinx.coroutines - Library Support for coroutines
  • Hilt - Used for Dependency injection
  • Coil - Allows for fetching and displaying of images in the composables
You might also like...
Compose-table is a funny compose project to display multiple rows and columns.

Readme Compose-table is a funny compose project to display multiple rows and columns. You can scroll in any direction ( vertically and horizontally) S

A 7 and 14 segment display for Android built with Jetpack Compose
A 7 and 14 segment display for Android built with Jetpack Compose

SegmentedDisplay A 7-segment and 14-segment display for Android build with Jetpack Compose Customizable Highly customisable. Hook up to a data stream

Jetpack compose theming following a google codelab

Jetpack Compose Codelabs This repository contains a set of Android Studio projects to help you learn about Compose in Android. Each sample contains th

This repo contains components built with Jetpack Compose for the Microsoft Surface Duo.

Surface Duo Jetpack Compose SDK This repo contains components built with Jetpack Compose for the Microsoft Surface Duo and other large screen and fold

An example concepts of MVVM and Kotlin. Display, Filter & Sort the given restaurants from assets with Jetpack Compose and AAC Small Android project demonstrating some navigation components for Jetpack Compose.
Small Android project demonstrating some navigation components for Jetpack Compose.

Small Android project demonstrating some navigation components for Jetpack Compose. Created this for presenting about this topic for a GDG meetup.

JetMovies - built this project with Jetpack Compose and TheMovieDb API
JetMovies - built this project with Jetpack Compose and TheMovieDb API

JetMovies I built this project with Jetpack Compose and TheMovieDb API. Used: Jetpack Compose Coroutines, Flow, State Flow ViewModel Constraint Layout

🚀 Sample Android Clean Architecture on Rorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.
🚀 Sample Android Clean Architecture on Rorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.

Android Clean Architecture Android Clean Architecture in Rorty is a sample project that presents modern, approach to Android application development u

📱 WhatsApp clone project demonstrates modern Android development built with Jetpack Compose and Stream Chat SDK for Compose.
📱 WhatsApp clone project demonstrates modern Android development built with Jetpack Compose and Stream Chat SDK for Compose.

This is a WhatsApp clone app built with Jetpack Compose and Stream Chat SDK for Compose. The purpose of this repository is to demonstrate below: Imple

Releases(publish-release-1)
  • publish-release-1(Aug 27, 2022)

    What's Changed

    • Add .circleci/config.yml by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/1
    • Circleci project setup by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/2
    • dev by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/3
    • Update config.yml by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/4
    • check nullability by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/5
    • minor code cleanup by @carolinemusyoka in https://github.com/carolinemusyoka/GitApp/pull/6

    New Contributors

    • @carolinemusyoka made their first contribution in https://github.com/carolinemusyoka/GitApp/pull/1

    Full Changelog: https://github.com/carolinemusyoka/GitApp/commits/publish-release-1

    Source code(tar.gz)
    Source code(zip)
    git_app.apk(15.99 MB)
Owner
Carol
Android Developer🚀
Carol
Android App made by Jetpack Compose Components with Kotlin, MVVM Pattern, Multi Module, Navigation, Hilt, Coroutines, Retrofit and cached data by Room

Android App made by Jetpack Compose Components with Kotlin, MVVM Pattern, Multi Module, Navigation, Hilt, Coroutines, Retrofit and cached data by Room

Yogi Dewansyah 13 Aug 31, 2022
Android App made by Jetpack Compose Components with Kotlin, MVVM Pattern, Multi Module, Navigation, Hilt, Coroutines, Retrofit and cached data by Room

Mobile Banking Android App made by Jetpack Compose Components with Kotlin, MVVM Pattern, Multi Module, Navigation, Hilt, Coroutines, Retrofit and cach

Yogi Dewansyah 13 Aug 31, 2022
This sample Android app lets user browse trending "language" related repositories on Github.

?? Alligitor An alligator exploring github repositories This sample Android app lets users browse trending "language" related repositories on Github.

Yousuf Sohail 5 Oct 17, 2022
An application that i developed with a aim of learning Jetpack compose and many other jetpack libraries

An application that i developed with a aim of learning Jetpack compose and many other jetpack libraries, The application make use of jikan Api which displays a list of animations,there more details and even trailers of the animations.

Odhiambo Brandy 10 Nov 23, 2022
A sample project in Kotlin to demonstrate Jetpack Compose, MVVM, Coroutines, Hilt, Room, Coil, Retrofit, Moshi, Leak Canary and Repository pattern

Jetpack-Compose-Boilerplate This repository contains a sample project in Kotlin to demonstrate Jetpack Compose, MVVM, Coroutines, Hilt, Room, Coil, Re

Areg Petrosyan 14 Dec 12, 2022
⌨️ A tool that gives you a massive head start when building Compose Desktop apps. It saves you from time-consuming setup and configuration

?? create-compose-app A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configur

theapache64 466 Dec 21, 2022
⌨️ A tool that gives you a massive head start when building Compose Desktop apps. It saves you from time-consuming setup and configuration

?? create-compose-app A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configur

theapache64 468 Dec 30, 2022
Pinocchio is a group of libraries for various common UI components. It could contain Composable, View, and everything related to UI.

Pinocchio Pinocchio is a group of libraries for various common UI components. It could contain Composable, View, and everything related to UI. All UI

NAVER Z 24 Nov 30, 2022
An Android / Wear OS app built with Jetpack Compose to search for definitions of English words

EnglishDictionary A simple Android / Wear OS app built with Jetpack Compose to s

daniil 4 Sep 21, 2022
💻 A cross-platform desktop application to identify libraries used inside an android application. Made possible by Compose Desktop ⚡

?? stackzy A desktop app to analyse APK. Built using Compose desktop ✨ Demo Watch demo ??️ Usage Show usage ?? Install Platform Download Status Linux

theapache64 876 Dec 24, 2022