Awesome
<h1 align="center">Awesome Jetpack Compose Learning Resources</h1></br> <p align="center"> :eyeglasses: A continuously updated list of learning Jetpack Compose for Android apps. </p> <br> <p align="center"> <a href="#"><img alt="Android Language Badge" src="https://badgen.net/badge/OS/Android?icon=https://raw.githubusercontent.com/androiddevnotes/learn-jetpack-compose-android/master/assets/android.svg&color=3ddc84"/></a> <a href="#"><img alt="Kotlin Language Badge" src="https://badgen.net/badge/language/Kotlin?icon=https://raw.githubusercontent.com/androiddevnotes/learn-jetpack-compose-android/master/assets/kotlin.svg&color=f18e33"/></a> <a href="https://github.com/androiddevnotes"><img alt="androiddevnotes GitHub badge" src="https://badgen.net/badge/GitHub/androiddevnotes?icon=github&color=24292e"/></a> </p> <br> <p align="center"> <img width="320px" src="assets/jetpack_compose_androiddevnotes.png" alt="jetpack compose androiddevnotes logo"></img> </p><br>Awesome Jetpack Compose Learning Resources aims to be your starting point to find the finest learning content for Jetpack Compose suites of libraries.
Content in languages other than English is tagged according to ISO 639-2 codes.
Contents
:memo: Contributing
:seedling: Contributors
Docs, Codelabs and Official Projects
Docs
-
Jetpack Compose Pathways - Learn about Compose, a modern toolkit for building native Android UI. Test your knowledge of Compose and earn your Jetpack Compose badge.
Codelabs
-
Jetpack Compose basics - In this codelab, you will learn * What Compose is * How to build UIs with Compose * How to manage state in composable functions * Data flow principles in Compose.
-
Layouts in Jetpack Compose - In this codelab, you'll learn how to use Compose's highest level of UI abstraction, Material Design, as well as low-level composables like Layout that allows you to measure and place elements on the screen
-
Using State in Jetpack Compose - In this codelab you'll learn about the state and how it can be used and manipulated by Jetpack Compose.
-
Jetpack Compose Theming - In this codelab you will learn how to use Jetpack Compose's theming APIs to style your application. We'll see how to customize colors, shapes and typography so that they're used consistently throughout your application, supporting multiple themes such as light & dark theme.
-
Jetpack Compose Animation - In this codelab, you will learn how to use some Animation APIs in Jetpack Compose.
-
Jetpack Compose Navigation - Use the Jetpack Navigation component to navigate between screens in Jetpack Compose.
-
Testing in Jetpack Compose - In this codelab you'll learn about testing UIs created with Jetpack Compose. You will write your first tests while learning about testing in isolation, debugging tests, semantics trees and synchronization.
-
Accessibility in Jetpack Compose - In this codelab you will learn how to use Jetpack Compose to improve your app's accessibility. We will walk through several common use cases and improve a sample app step by step. We will cover touch target sizes, content descriptions, click labels, and more.
-
Migrating to Jetpack Compose - In this codelab, you'll be migrating parts of the Sunflower's plant details screen to Compose. We created a copy of the project for you to try out migrating a realistic app to Compose.
-
Advanced state and side effects in Jetpack Compose - In this codelab you will learn advanced concepts related to State and Side Effects APIs in Jetpack Compose. We'll see how to create a state holder for stateful composables whose logic isn't trivial, how to create coroutines and call suspend functions from Compose code, and how to trigger side effects to accomplish different use cases.
Official Projects
-
https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-master-dev/ui - Git repository on Jetpack Compose.
-
https://github.com/androidx/androidx/tree/androidx-master-dev/ui - Development environment for Jetpack Compose. Synchronized with Jetpack's primary development branch on AOSP.
-
https://github.com/aosp-mirror/platform_frameworks_support/tree/androidx-master-dev/ui - AOSP mirror of Git repository on Jetpack Compose.
-
https://issuetracker.google.com/issues?q=status:open%20componentid:612128 - Search Recent issues for Jetpack Compose Android.
-
https://issuetracker.google.com/issues/new?component=612128 - Create new issue for Jetpack Compose Android.
-
https://github.com/android/compose-samples - Official Jetpack Compose Samples
Resources
-
https://github.com/vinaygaba/Learn-Jetpack-Compose-By-Example
- 🚀 This project contains various examples that show how you would do things the "Jetpack Compose" way.
-
https://github.com/Gurupreet/ComposeCookBook
- A Collection on all Jetpack compose UI elements, Layouts, Widgets and Demo screens to see it's potential
-
https://github.com/MindorksOpenSource/Jetpack-Compose-Android-Examples
- 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.
-
https://github.com/hitherejoe/ComposeAcademy-Playground
- Compose Academy Playground is a free resource that provides snippets and practical samples on how to use Jetpack Compose for the Android platform.
-
https://github.com/Foso/Jetpack-Compose-Playground
- Collection of Jetpack Compose example code and tutorials
-
https://github.com/Naveentp/Awesome-Jetpack-Compose
- A collaborative list of awesome jetpack compose resources.
-
https://github.com/SimformSolutionsPvtLtd/SSJetPackComposeProgressButton
- SSJetPackComposeProgressButton is an elegant button with a different loading animations..🎉
-
https://github.com/rawhasan/jetpack-compose-exercises
- A collection of exercise projects in Jetpack Compose that shows how to do the usual things from the view word in the new way in Jetpack Compose.
-
https://github.com/SimformSolutionsPvtLtd/SSComposeCookBook
- A Collection of major Jetpack compose UI components which are commonly used.🎉🔝👌
-
https://github.com/canopas/Intro-showcase-view
- An android library to highlight different features of the app built using Jetpack Compose.
Articles and Tutorials
-
jetc.dev - Jetpack Compose Resources + Newsletter.
-
Understanding Jetpack Compose Article Series- Understanding Jetpack Compose — Part 1 of 2 by Leland Richardson
-
JOE BIRCH - Collection of quality articles on Jetpack Compose by Joe Birch.
-
Jetpack Compose Playground - This is a collection of Jetpack Compose examples/tutorials and demos.
-
Search latest jetpack compose articles on Medium - Collection of quality articles from Android Devs and the Android team that worked on Jetpack Compose. Sort Jetpack Compose articles by Recency on Medium.
-
Search jetpack compose articles on Dev - Collection of quality articles from Android Devs. Sort Jetpack Compose articles by Recency on Dev.to
-
Compose Academy - Snippets and guides for Jetpack Compose on the Android platform
-
JetpackCompose.app - Learn more about using Jetpack Compose in Android. How does Jetpack Compose compare to the existing Android UI Toolkit?
-
Jetpack Compose Archives by AlexZh - Quality Jetpack Compose articles by AlexZh
-
Jetpack Compose Tutorial for Android: Getting Started - In this Jetpack Compose tutorial, you’ll learn to use the new declarative UI framework being developed by the Android team by creating a cookbook app.
Slides
Note: Find more Slides at https://cse.google.com/cse?cx=010150859881542981030%3Ahqhxyxpwtc4&ie=UTF-8&q=jetpack+compose&sa=Search
- Composables under the hood [January 24, 2021]
- Migrating Your Design System to Jetpack Compose [November 25, 2020]
- Compose ❤️ Dino: Building Chrome’s T-Rex Game in Jetpack Compose - Kotlin Mumbai [September 26, 2020]
- 360|AnDev 2020: Learning Jetpack Compose By Example [July 23, 2020]
- Let’s build an Android UI with Jetpack Compose by Alex Zhukovich [April 20, 2020]
- Jetpack Compose どうなの?(Android Dev Summit 2019報告会)by Yuki Anzai [November 15, 2019] [JA]
- MVI with Jetpack Compose by Luca Nicoletti [September 09, 2019]
- React, Meet Compose by Leland Richardson [July 12, 2019]
- Jetpack Compose — Next Gen Kotlin UI Toolkit for Android [June 22, 2019]
- Jetpack Compose by TakuSemba [May 21, 2019]
- SSComposeCookBook: Jetpack compose UI components [Aug 25, 2021]
Talks, Conferences, and Interviews
Android Developers
- Thinking in Compose [Aug 26, 2020]
- Compose by example [Aug 26, 2020] - We’ll walk through examples of theming, animation, layout, and more, demonstrating how to customize and combine components to build real UIs.
- Compose for existing apps [Aug 26, 2020] - In this talk, you'll learn how to do that! We'll cover topics such as: adding Compose to your existing Views and embedding Views in Compose, using your existing View theme and current app architecture in Compose, testing all of that code, and much more.
- What's new in Compose Design Tools [Jul 27, 2020] - Have a sneak peek at some of the toolings we are working on to help you develop your Jetpack Compose applications.
- Jetpack Compose [Jun 10, 2020] - We outline our roadmap, what is ready for use right now, share our direction in areas that are still evolving, and show how the tight integration with tooling makes the development experience even better.
- #AskAndroid at Android Dev Summit 2019 - Jetpack Compose [Nov 2, 2019] - Discussion of Jetpack Compose questions submitted by Android developers online.
- Building Jetpack Compose [Oct 23, 2019] - Come behind the scenes with the Jetpack Compose team to hear about the motivations for the project and how Compose simplifies and accelerates UI development on Android.
- Understanding Compose (Android Dev Summit '19) [Oct 24, 2019] - This session covers the benefits of a declarative reactive UI system like Jetpack Compose and how it applies to real problems that Android developers have today.
- What's New in Jetpack Compose (Android Dev Summit '19) [OCt 23, 2019] - This talk introduces Compose to new audiences, including what the project is and how it is taking shape. The talk also updates people who already know about Jetpack Compose, including how the project has evolved.
- Chain React 2019 - Leland Richardson - React, Meet Compose [Jul 31, 2019] - Jetpack Compose is a new declarative UI framework that is being developed in the open for Android. It has a very similar programming model to React, and this talk will dive deep into the internals of both to explain the similarities and differences in the architectures of both, and how React Native might be able to leverage some of this technology long term
- Declarative UI Patterns (Google I/O'19) [May 8, 2019] - Explore how reactive and declarative paradigms can be applied to Android UI development, making it easier for developers to integrate these patterns into their Android apps with Kotlin.
droidcon
Android Makers
<br> <br>JetBrains TV
<br> <br>DutchAUG
- All about Jetpack Compose(https://www.youtube.com/watch?v=Z7Qs9XYGyCM)
Google Developers
<br> <br>Wajahat Karim
<br> <br>raywenderlich.com
<br> <br>AlexZh Dev
<br> <br>Rivu Chakraborty
- Droidcon Online: MIGRATING TO COMPOSE
Videos
hitherejoe_dev
<br> <br>MindOrks
<br> <br>Kotlin London
- Daniel Montoya Ramos - Android Jetpack Compose - Daniel will show a new way of building UI's in Android using Jetpack Compose, comparing Imperative vs Declarative approaches. He'll look at managing state changes and composing functions.
Yet Another Dev
<br> <br>Leland Richardson
<br> <br> <br> <br>All Techies
<br> <br>Philipp Lackner
<br> <br>Alex Styl
Twitch Channels
[EN]
-
intelligibabble - Leland Richardson
-
adammc331 - Adam McNeilly
-
Elliott_Troop - Elliott Troop
-
ThePocmo - ThePocmo
Books
-
Android UI Development with Jetpack Compose by Thomas Künneth - Complete with hands-on examples, this easy-to-follow guide will get you up to speed with the fundamentals of Jetpack Compose such as state hoisting, unidirectional data flow, and composition over inheritance and help you build your own Android apps using Compose. You'll also cover concepts such as testing, animation, and interoperability with the existing Android UI toolkit.
-
Jetpack Compose internals by Jorge Castillo - Jetpack Compose is the future of Android UI. Master how it works internally and become a more efficient developer with it. This book provides all the details to understand how the Compose compiler & runtime work, and how to create a client library using them.
-
EXPLORING JETPACK COMPOSE by Joe Birch [NOT PUBLISHED YET] - I’m currently writing a book, “Exploring Jetpack Compose”, where I’ll be diving into the different components that are available within the Compose APIs.
-
From View to Composable by Alex Styl – Jetpack Compose is the future of Android UI. Wouldn't it be great if you did not have to spend hundreds of hours figuring out how to do things you already know the old-fashioned way? This book includes code examples and to-the-point explanations so that you do not have to.
Apps
-
👓 A curated list of awesome Jetpack Compose android apps by open-source contributors.
-
Use the advanced search on GitHub and find open-source projects to your liking.
Podcasts
Twitter Threads
-
Learn more about the core concepts of #JetpackCompose right from your Twitter feed! My goal is to create easy-to-consume but useful content that does not take up too much of your time. - by Vinay Gaba
-
On #JetpackCompose Alpha day, I want to share a story about Architecture in Compose. When we open sourced Compose at I/O 2019, one of the most common questions from many Android developers was “What does this mean for the architecture of our apps?” - by Sean McQuillan
-
Seeing a lot of confusion around Compose and SwiftUI. A few clarifying facts. - by Leland Richardson
-
Jetpack Compose can seem daunting after years of using Android Views. Let's speed up your learning of Compose using things you already know from Views. - by Alex Styl
Communities
FAQ on Jetpack Compose
-
Find answers to frequently asked questions about Jetpack Compose!
-
Below FAQs are curated and taken from AMA done by Android Eng Team
:memo: Contributing
See contributing.md
:seedling: Contributors
Thank you to all the contributors!
See AUTHORS