📚 Book
The book contains 12 different projects where we build out a collection of commonly found screens within mobile apps. In each chapter we'll also cover writing tests for our composable UI!
📱 App
The supporting app contains all of the source code for the project. Run the samples directly on your device and follow along with the walkthroughs in the book!
📺 Screencasts
The screencasts walkthrough each step of the projects in a video format, allowing you to follow along with the projects in a visual format!
Throughout the different projects you'll learn how to use a range of essential Jetpack Compose APIs, allowing you to build production ready apps.
Not only will these projects provide you with the knowledge and confidence in building your own Compose UIs, but it will act as a cookbook for future compose projects. Join the waitlist if you're interested and read more about the content of Practical Jetpack Compose, below!
Introduction to Compose
Before we start building things with compose, we need to understand some of the foundations. In this chapter we look at some introductory concepts around compose, giving you the confidence to move onto the following chapters.
Building a Settings screen
Using a collection of material composables, in this chapter we explore the foundations of building composable UI. We'll be building a settings screen that supports a variety of different interactable application settings.
Building an Authentication screen
Sign-up and Sign-in screens are in almost every application, so in this chapter we recreate this experience using composables. This also gives the oppourtunity to introduce the concepts of state management for Jetpack Compose.
Building a Home Screen
Many apps have some form of Home screen that is used to navigate around different sections of the app. In this chapter we take a look into the Scaffold composable, along with its contained Drawer section, to build a home screen for an app.
Building an Email Inbox
Feeds allow apps to display streams of content to users, and in this chapter we take a look at building one for ourselves. This involves building a minimal list of content using various material composables, allow us to serve a stream of content to users.
Building a Podcast Dashboard
A single content feed will not be enough for all applications. Apps like the Google Play Store & Spotify display a range of browseable content in a variety of formats. In this chapter we cover building a complex content feed that contains multiple types of feeds (lists, carousels, chips) in a single content area.
Building a Messaging UI
Messaging is a common use case that many mobile users are familiar with. In this chapter we explore recreating the sending and receiving of messages using composable UI.
Building a Video Player
Media is a big part of many applications. In this chapter we explore how we can can utilise Exoplayer to build a Video PLayer for Jetpack Compose.
Building a Calendar
While not every application utilises a Calendar, it provides a range of interesting problems to solve. In this chapter we explore building daily, weekly and monthly calendar composable that can display a collection of events for those formats.
Building Graphs & Charts
Animations are an exciting part of compose, and we would be silly not to include those! In this chapter we build a collection of graphs and charts, animating the display of their values using the compose animation APIs.
If you were hoping we'd cover something that isn't listed above, let us know!