Jetpack Compose

  • Compose by example: BoxWithConstraints

    A practical example of using BoxWithConstraints in Jetpack Compose to build responsive layouts

  • Show BottomBar conditionally in Compose

    Conditionally show BottomBar with bottom navigation in Jetpack Compose

  • Compose by example: Intrinsics

    Example of using IntrinsicSize in Jetpack Compose to query children before they are measured.

  • Animation in Jetpack Compose

    Foundational overview of Compose Animation APIs to help you choose most suitable API for on your animation needs.

  • Compose sample: UI state with Flow, offline first

    Sample repo implementing state using Flow, Offline First repository, unit tests using Turbine.

  • Animating visibility vs alpha in Compose

    AnimatedVisibility vs animateFloatAsState in Jetpack Compose: when to use which

  • Practical Compose Slot API example

    Learn how to manage screen sections using Slot API pattern in Compose

  • Lazy Grid layouts in Compose

    Covers 3 ways to build lazy grid layouts using fixed, adaptive and custom configuration

  • Lazy layouts contentPadding

    Controlling padding for first and last item in a lazy layout in Compose

  • Composable functions and return types

    Exploring composable function characteristics and return types and overall API guidelines

  • Compose phases and optimizations

    Learn about Compose Phases and optimizing UI by controlling what Phases get executed when data in composable changes

  • Using MotionLayout in Compose

    A demo of using MotionLayout with Jetpack Compose with motion scene set up as a JSON5

  • Making reusable composables using Generics

    Using Java Generics to create reusable shared components in Compose

  • Getting started with Canvas in Compose

    Explore DrawScope and create your first custom component using Canvas in Jetpack Compose

  • Compose Row, Column and Scoped Modifiers

    Explore the power of Row and Column composables and their respective RowScope and ColumnScope modifiers to layout child composables

  • Passing data using CompositionLocal

    CompositionLocal allows you to pass data between composables implicitly without passing parameters. A common use case is sharing design system attributes such as colors and type styles

  • Compose remember vs remember mutableStateOf

    Manage state with remember mutableStateOf to cause recomposition of dependent composables when state changes

  • StateFlow vs SharedFlow in Compose

    Discuss uses and limitations for observable data holders StateFlow and SharedFlow when building Android apps

  • Bottom Nav with Nav Graphs in Compose

    Example of setting up BottomNavigation with multiple backstacks using Jetpack Compose Navigation library

  • Intercept back press in Jetpack Compose

    Learn to intercept back press to perform an intermediate action in Jetpack Compose

  • Bottom Navigation in Jetpack Compose

    A comprehensive example to get you started with using BottomNavgation in Jetpack Compose