Playground app that displays charts using Jetpack Compose

Overview

Blockchain App

This is an application that consumes the API of Blockchain and display a linear chart of the bitcoin transactions per second on a given range & other stats. The graph is made with whimsical.

GitHub Cards Preview

Tech Stack

This project is monolithic(for now) and has only one screen. However, all inner packages are well organized in order to be scalable and modularized in the following days. It uses MVVM as Software Design Patter and is using Jetpack Compose for the UI.

  • :core:functional-programming contains the Either sealed class & some helper methods. Either is the "wrapper" for handle Either an Error or a Success structure.
  • :core:network contains some middlewares & extensions for execute safe retrofit calls (I write 3 articles about it -> Create a safe retrofit calls extension part I, II, & III)
  • :core:network/middlewares middlewares are going to act as a firewall before executing any retrofit call. Only if all the middlewares are supplied then the retrofit call is allowed to be executed.
  • :utils has utilities interfaces like a ResourceProvider & ConnectivityUtils, who's implementations will be in the app module.
  • :features:home Home is our only feature (for now), it has it's data sources, mappers & repositories interfaces for prepare the data and send it to the HomeViewModel.
  • :ui:components: contains our composables.
  • :tests unit tests for repository, datasources, mappers, etc. I also write articles about this. Unit Tests & Instrumented Tests
  • :app module contains our HiltApplication in charge to create the app DI graph and the interface implementations from our libraries.

App Screenshot v1.0.0

GitHub Cards Preview

Development setup

You require at least Android Studio Arctic Fox | 2020.3.1 Build #AI-203.7717.56.2031.7583922, built on July 26, 2021 for run this project. No API Keys required.

Libraries

  • Application entirely written in Kotlin
  • Asynchronous processing using Coroutines
  • Uses Dagger-Hilt for dependency Injection
  • Uses Jetpack Compose for latest declarative UI features
  • Uses mockk for mocking objects, interfaces & more.
  • Uses JUnit4 for unit tests assertions & more.

📃 License

Copyright 2021 Christopher Elias

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
You might also like...
Ehya-android - This application displays the deserted Sunan for us to revive them.
Ehya-android - This application displays the deserted Sunan for us to revive them.

Ehya | إحياء Available on Google Play Libraries Jetpack Compose for the UI. Compose Navigation. Compose Animation. Room for the data persistence. Work

Learn Jetpack Compose for Android by Examples. Learn how to use Jetpack Compose for Android App Development. Android’s modern toolkit for building native UI.
Learn Jetpack Compose for Android by Examples. Learn how to use Jetpack Compose for Android App Development. Android’s modern toolkit for building native UI.

Learn Jetpack Compose for Android by Examples. Learn how to use Jetpack Compose for Android App Development. Android’s modern toolkit for building native UI.

A Simple Blog App using Jetpack Compose, Flow, Navigation Compose, Room and Firebase
A Simple Blog App using Jetpack Compose, Flow, Navigation Compose, Room and Firebase

BlogCompose A Simple Blog App using Jetpack Compose, Flow, Navigation Compose, Room and Firebase Instructions Download your Firebase configuration fil

Jetpack-compose-animations-examples - Cool animations implemented with Jetpack compose
Jetpack-compose-animations-examples - Cool animations implemented with Jetpack compose

Jetpack-compose-animations-examples This repository consists of 4 animations: St

Compose-navigation - Set of utils to help with integrating Jetpack Compose and Jetpack's Navigation

Jetpack Compose Navigation Set of utils to help with integrating Jetpack Compose

Fractal Trees 🌴 using recursion | Demonstrated using Jetpack Compose 🚀

Fractal Trees 📜 Description Implementing Fractal Trees 🌴 with recursion ➰ and using Jetpack Compose to demonstrate it 🚀 💡 Motivation and Context H

Compose-Instagram-Profile-UI - Instagram profile screen UI using android jetpack compose
Compose-Instagram-Profile-UI - Instagram profile screen UI using android jetpack compose

Compose-Intsgram-Profile-UI Instagram profile screen UI using android jetpack co

List-programminglanguage-compose - Simple implementation of a list of programming languages using LazyColumn and Coil in Jetpack Compose This is a sample app(For beginners - App #1) built using Jetpack Compose
This is a sample app(For beginners - App #1) built using Jetpack Compose

This is a sample app(For beginners - App #1) built using Jetpack Compose. It is a simple - single screen app to demonstrate use of basic Jetpack Compose UI elements like Text, Image and Button & LazyColumn (Vertical Recyclerview). It also demonstrates how compose manages state with a Boolean State.

Owner
Christopher Elias
Android developer writing android apps since 2016.
Christopher Elias
This repository is a playground of jetpack compose for android developers

Pritesh Jetpack Compose This repository is a playground of jetpack compose for Android Developers, I tried to get my hands dirty with challenging UI t

PriteshVadhiya 5 Apr 20, 2022
Playground Jetpack Compose Samples

Playground Jetpack Compose Samples For more information, please read the documentation ?? Requirements To try out these sample apps, you need to use A

Vinicius Garcia Delgado 0 Aug 9, 2022
Creative coding/generative art playground for Jetpack Compose

Creative Coding with Compose! Resources for the Creative Coding with Compose talk at DroidCon NY 2022. Resources Main resource https://github.com/terk

drinkthestars 16 Dec 10, 2022
A playground to showcase cool IDE features.

Let the IDE do that for you It's not being lazy if it makes you more productive ??️ Sebastiano Poggi Lead on Package Search at JetBrains Android, Flut

Sebastiano Poggi 13 Oct 7, 2022
Jetpack Compose Boids | Flocking Insect 🐜. bird or Fish simulation using Jetpack Compose Desktop 🚀, using Canvas API 🎨

?? ?? ?? Compose flocking Ants(boids) ?? ?? ?? Jetpack compose Boids | Flocking Insect. bird or Fish simulation using Jetpack Compose Desktop ?? , usi

Chetan Gupta 38 Sep 25, 2022
Jetpack-compose-uis - A collection of some UIs using Jetpack Compose. built using Katalog

Jetpack Compose UIs This is a collection of some UIs using Jetpack Compose. It i

Mori Atsushi 3 Dec 15, 2022
A simple authentication application using Jetpack compose to illustrate signin and sign up using Mvvm, Kotlin and jetpack compose

Authentication A simple authentication application using Jetpack compose to illustrate signin and sign up using Mvvm, Kotlin and jetpack compose Scree

Felix Kariuki 5 Dec 29, 2022
This is a sample app(For beginners - App #2) built using Jetpack Compose. It demonstrates the concept of State Hoisting in Jetpack Compose.

JetBMICalculator This is a sample app(For beginners - App #2) built using Jetpack Compose. It demonstrates the concept of State Hoisting in Jetpack Co

BHAVNA THACKER 3 Dec 31, 2022
A collection of animations, compositions, UIs using Jetpack Compose. You can say Jetpack Compose cookbook or play-ground if you want!

Why Not Compose! A collection of animations, compositions, UIs using Jetpack Compose. You can say Jetpack Compose cookbook or play-ground if you want!

Md. Mahmudul Hasan Shohag 186 Jan 1, 2023
Jetpack-Compose-Demo - Instagram Profile UI using Jetpack Compose

Jetpack-Compose-Demo Instagram Profile UI using Jetpack Compose

omar 1 Aug 11, 2022