Stock Ticker / Watchlist App being used as an excuse to learn Compose and other Jetpack libs.

Overview

StockTicker App

Simple app that displays a few FAANG stock tickers and allows the user to search for and add different tickers to a watchlist.

API Keys

This project utilizes finnhub.io to access stock data. An API key is required. However, this key is free and can be gotten by only signing up on their website. Once you have the key, you can put it into your local.properties file:

FINNHUB_API_KEY=myFinnhubApiKey

This will automatically be added to your BuildConfig object after the next successful build. (In my experience, just doing a gradle sync doesn't seem to generate it.)

How would I use this as a template?

Honestly, this should be easy as removing my Kotlin code and replacing it with yours. You'll also want to update the applicationId in your build script as appropriate, and double check the Manifest. You can then refer back to my original code to see things like how to set up your Application class so it works with Hilt and WorkManager, etc. I've not actually tested this though, so YMMV.

Why?

I wrote this mainly as a way to invest some time into learing compose and some other libraries that I do not use in my day to day work. This app is built with the following:

  • Compose
  • DataStore (with Protobuf)
  • WorkManager
  • Room
  • Hilt
  • Retrofit
  • Moshi

What's Next

My intention from here is to add more polish. Mainly around things like Keyboard dismissal, etc. More excuses to learn more about building out UI with compose. I'd also like to add a detail screen for stocks as an excuse to do some navigation.

Further than that, I hope to add some unit and integration tests using JUnit and Espresso.

I think I have a suggestion or improvement

I welcome all feedback, but don't plan to accept external contributions at this time. This is meant to be my learning surface for these different libraries, and it's important to me that I'm the one writing each line of code committed within it. However, please feel free to utilize Github's comment feature or reach out to me on Twitter at @exallium

You might also like...
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. A Collection of major Jetpack compose UI components which are commonly used.πŸŽ‰πŸ”πŸ‘Œ
A Collection of major Jetpack compose UI components which are commonly used.πŸŽ‰πŸ”πŸ‘Œ

SSComposeCookBook A Collection of major Jetpack compose UI components which are commonly used. Introduction Jetpack Compose is a modern toolkit for bu

A Jetpack Compose component used for displaying Markdown-formatted text.
A Jetpack Compose component used for displaying Markdown-formatted text.

MarkdownText A library for displaying Markdown contents within Jetpack Compose. Uses Coil Current limitations Lists that are annotated with the * must

An app for Android that uses quizzes to help you learn more about computer science.

Quiz App An app for Android that uses quizzes to help you learn more about computer science. πŸ“Έ Screenshots No screenshot available yet πŸ’» Tech Stack

This is a sample app(For beginners - App #2) built using Jetpack Compose. It demonstrates the concept of State Hoisting in Jetpack Compose.
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

You can learn how to create multi module Android project with this repository.
You can learn how to create multi module Android project with this repository.

MultiModuleProjectSample You can learn how to create multi module Android project with this repository. You can read this article in Turkish. Go to th

A simple authentication application using Jetpack compose to illustrate signin and sign up using Mvvm, Kotlin and jetpack compose
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

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

Jetpack Compose Boids | Flocking Insect 🐜. bird or Fish simulation using Jetpack Compose Desktop πŸš€, using Canvas API 🎨
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

Owner
Alex Hart
Alex Hart
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.

MindOrks 382 Jan 5, 2023
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
Let's learn the basics of Jetpack Compose

MyPlaygroundForJetpackCompose Let's learn the basics of Jetpack Compose Info This project is a self learning project for me. The goal of the project i

Emre Tekin 1 Jan 8, 2022
Google CodeLab: learn how to use some Animation APIs in Jetpack Compose.

Compose Animation Codelab This folder contains the source code for the Compose Animation codelab. In this codelab, you will learn how to use some Anim

Ryan Wong 0 Dec 26, 2021
Jetpack Compose based project, used to stress-testing compose features / integrations and explore non-trivial functionality

Project containing Jetpack Compose samples For pagination & network images it uses CATAAS. Known issues Navigation-Compose Issue with fast tapping on

Denis Rudenko 59 Dec 14, 2022
Here you can try out Kotlin Multiplatform and Jetpack Compose with some other cutting-edge technologies.

wire The Wire is a Kotlin Multiplatform sample project, currently supporting Android and Windows. Tools And Technolagies Architecture: MVVM MultiThrea

Ali Rezaiyan 9 Aug 16, 2022
Instagraph is an Instagram Clone which I am practicing on a new concepts and other advanced Jetpack compose specific concepts.

Instagraph Instagraph is an Instagram Clone which I am practicing on a new concepts and other advanced Jetpack compose specific concepts. The clone on

Mustafa Ibrahim 117 Nov 25, 2022
Drawing text around other content in Jetpack Compose

TextAroundContent Drawing text around other content in Jetpack Compose Installat

Dmitry Mysenko 8 Feb 9, 2022
OTPView is a view made in Jetpack compose. It is highly customisable and can be used to show OTP view with different length and shapes.

OTPView OTPView is a highly costumizable OTP view made in the Jetpack compose UI. Usage: CircleOtpView is a sample composable that calls the OtpView w

kunalsale 17 Aug 4, 2022
This app can be used to track open slots for vaccination. This is built using Jetpack Compose.

Covid Vaccine This projects used the Cowin APIs provided by the government. Screenshots Tech Stack Used Kotlin Dagger Hilt Clean Architecture with Mod

Himanshu Singh 101 Dec 15, 2022