Jetpack Compose Workshop

I offer both 1-day and 2-day workshops – learn the fundamental parts of Jetpack Compose so that you can build apps of your own using the Composable UI framework, followed by a range of skills that will help to build and layout a range of accessible and tested components. The workshop takes a practical approach – each section will be introduced with theory, followed by exercises to ensure you get practical experience with Compose APIs.

Training is provided by Joseph Birch, a Google Developer Export for Android with over 12 years of experience in Android Development. If you want to book a workshop, please email me at

What will you learn?

Day 1

Introduction to Jetpack Compose

Before we can start building, we’ll need to get a solid understanding of Jetpack Compose, how it differs from the Android UI Toolkit and learn about how it operates. We’ll introduce the key concepts of compose and make sure you understand how things work in a compose world.

Composable Functions and Modifiers

Composable functions are the most important concept when it comes to Jetpack Compose, these are what are used to declare how a UI component is composed. Paired with Modifiers to control the look and feel of a composable, these concepts set you up on your compose journey.

Managing State

When it comes to Jetpack Compose, State is an essential part of composing UI. We’ll cover the ins and outs of state, ensuring you have the confidence to create and use your own state, as well as operate side effects within your composables.

Building Layouts with Compose

Now that you’ve built composable functions, you’re going to want to lay them out. We’ll cover the key concepts that are used to lay out your composables, getting you on the right track to building an array of different arrangements.

Building Lazy Layouts with Compose

Alongside standard composable layouts, Lazy layouts are used to composable large sets of data. For these infinite lists, we’ll teach you about the available composables, as well as how to optimise them for efficiency.

Building with Material components

Material Components are a core part of the Jetpack Compose APIs, offering a range of composables for building UI. We’ll explore a collection of material components, giving a toolset that’ll help you build  material concepts into your compose-based applications.

Theming composables

Each application will have its own unique theming that it’ll wish to apply globally across an app. Jetpack Compose provides a powerful API for giving our application its own unique look and feel, while also allowing us to enforce this across our entire application.

Day 2

Jetpack Compose + UI Toolkit Interoperability

Learn how to use Composables inside of the Android Toolkit, and vice versa. These powerful APIs allow to adopt Jetpack Compose into existing applications, utilising the power of both UI frameworks.

Refactoring Android Views to Composables

Learn effective methods for refactoring existing Android Views to Composables. Compose introduces different concepts when compared with the UI framework, and there are going to be points where you need to refactor existing code to be compose-friendly. We’ll cover all you need to know here.

Navigation in Compose

You’re going to have multiple composables in your app, so being able to move between them is essential. We’ll teach you how to build navigation graphs in Jetpack Compose, allowing navigating between the different composable features in your app.

Handling Permissions

Most apps require some kind of permission-based access to information or action on a users device. With Compose we can handle these permissions in compose-based context. We’ll cover the ins-and-outs of permission handling so that you can slot these flows straight into your applications.

Compose & Accessibility

Building apps with Compose is one thing, but ensuring they are accessible for all users adds another layer to the development of apps. We’ll teach you how accessibility services interact with composables, as well as how you can create accessible experiences throughout your compose-based app.

Testing Composables

Writing tests for composables helps to ensure that UIs operate as expected, and that they stay that way! We’ll cover the compose testing framework and how you can write your own automated tests to ensure your apps remain functional with any changes that are deployed.

Animating Composables

After learning how to create composable UI, we’re going to want to know how to add some polish via animations. We’ll teach you all about the core animation APIs and how we can use them to add meaningful motion to composables.

Custom Drawing and Layouts

While at this point we know how to create UIs using composable, there’s going to be times when we need to work at a lower level to create the UI components for your app. Whether it’s custom drawing on the Canvas composable, or using the Layout composable to compose your UI, we’ll teach you how to use each of these APIs for your projects.

How much does it cost?

  • 1 Day Workshop
    • upto 10 engineers – £2,450
    • upto 20 engineers – £3,450
    • 30+ engineers – £4,450
  • 2 Day Workshop
    • upto 10 engineers – £4,450
    • upto 20 engineers – £6,450
    • 30+ engineers – £8,450

Can you build a workshop based on my team’s requirements?

Yes! The pricing follows the same table as above for these workshops. Please contact us at to start building a workshop for your team.