Skip to content

amitshekhariitbhu/Learn-Kotlin-Flow

Repository files navigation

Learn Kotlin Flow by real examples for Android

About this project:

  • This project is for someone who wants to get started with Kotlin Flow.
  • I have tried to add the examples we implement in our Android project frequently.

About me

Hi, I am Amit Shekhar, Co-Founder @ Outcome School • IIT 2010-14 • I have taught and mentored many developers, and their efforts landed them high-paying tech jobs, helped many tech companies in solving their unique problems, and created many open-source libraries being used by top companies. I am passionate about sharing knowledge through open-source, blogs, and videos.

You can connect with me on:

Steps to learn Kotlin Flow from this project

First, we need to learn the concepts.

I have written a series of blogs on Flow API in Kotlin:

Then, just clone, build, run the project and start learning Kotlin Flow by examples.

You will learn the following from this Learn Kotlin Flow project:

  • How to use Kotlin Flow in Android Project?
  • Doing simple task in background using Kotlin Flow.
  • Doing tasks in series using Kotlin Flow.
  • Doing tasks in parallel using Kotlin Flow. Blog
  • Making two network calls in parallel using Kotlin Flow.
  • Using operators like filter, map, reduce, flatMapConcat, zip, and etc.
  • Exception handling in Kotlin Flow
  • How to use onCompletion in Flow?
  • Retry Task using retry operator in Flow. Blog: Retry Operator in Kotlin Flow
  • Retry Task with Exponential Backoff in Flow. Blog: Retry Operator in Kotlin Flow
  • Using Kotlin Flow with Retrofit. Blog
  • Using Kotlin Flow with Room Database. Blog
  • Using Kotlin Flow with various 3rd party libraries.
  • Making two network calls in parallel using Kotlin Flow.
  • Doing task in series using Kotlin Flow.
  • Writing Unit-Test for ViewModel which uses Kotlin Flow. Blog: Unit Testing ViewModel with Kotlin Flow and StateFlow

Kotlin Flow Examples for Android Development: Activity and ViewModel

If this project helps you in anyway, show your love ❤️ by putting a ⭐ on this project ✌️

License

   Copyright (C) 2024 Amit Shekhar

   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.

Contributing to Learn Kotlin Flow

Just make pull request. You are in!

Thanks

Amit Shekhar
Co-Founder @ Outcome School

You can connect with me on:

Read all of our blogs here.

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages