DevCommunity Summit 2021 DevCommunity Summit 2021

Compose

Friday, October 1, 2021

- EDT
XOXO for Declarative UI: The similarities between a tic-tac-toe board written in 3 declarative frameworks
Dheeraj Neelam
Dheeraj Neelam
Comcast, iOS Engineer
Justin Thomas
Justin Thomas
Comcast, Senior Engineer

There’s a rise in the number of libraries that encourage a “declarative” over “imperative” approach to creating UI. Every platform has at least one such library. Not only do these libraries offer a new way of thinking about programming, collectively they share a lot of similarities, regardless of the platform.

We know the rising popularity of declarative UI in Android with Jetpack Compose and iOS with Swift UI, but declarative UI has been used for quite some time on the web in React. We frequently hear people comment on the syntactic similarities between React and SwiftUI. In this presentation, Chris, Dheeru and Sweety would show a quick comparison of these three declarative UIs using a simple game app of tic tac toe.

- EDT
ConstraintLayout for Compose and Beyond
JH
John Hoford
Google, Developer
Nicolas Roard
Nicolas Roard
Rivian, Director of Engineering

CL for compose 1.0 introduces new concepts such as the json declaration of your UI and live edit. We intend to build upon this a cross platform UI component with similar capabilities, from layout to motion. 

This talk will cover ConstraintLayout Compose 1.0 featuring MotionLayout & ConstraintLayout, and the new json syntax that will be available on Compose, Compose Desktop, Swing and Android Views. We will also cover our new remote editing app "Link" and how you can use it to create and edit rich interactive user interfaces.

- EDT
How we built a production-ready Chat SDK using Jetpack Compose
Filip Babić
Filip Babić
Stream, Lead Android Developer for Jetpack Compose
Márton Braun
Márton Braun
Stream, Android Developer Advocate

In this session, we'll talk about how we built the world's first Jetpack Compose Chat SDK, what challenges we met along the way and why put so much trust into a technology that only recently became stable.

We'll talk about the API design and what decisions we've made to allow for both default behavior and UI and a rich set of customization options.

Dev Community Slack: Discussion and Q&A

- EDT
Creating an API with Strapi hosted on Heroku with Firebase Auth using Jetpack Compose and SwiftUI
Craig Clayton
Craig Clayton
Ed Farm, Senior iOS Engineer
Sierra OBryan
Sierra OBryan
Atomic Robot, Senior Consultant

In this talk, we will show you how you can create a self hosted API using Strapi deployed on to Heroku. We will first cover how you create Strapi locally. Then we will show you how you can deploy to heroku. Once the API is deployed we will show you how you can bring the API into a Jetpack Compose and SwiftUI project.

- EDT
Migrating a large-scale banking app to Compose
Fatih Giris
Fatih Giris
DNB Bank, Android Lead

The Android community adopts Jetpack Compose more and more each day. But what about our existing apps? Adopting existing apps to Jetpack Compose might be an overwhelming task when the migration is not planned well.

In this talk, we will see the Compose migration strategy used in DNB. We will briefly talk about the interoperability APIs and how they are used in this migration process. We will also talk about how we are adopting our internal design system to Jetpack Compose. Finally, we will discuss the challenges we faced during this migration.

- EDT
Overview of UI testing in Compose

Jetpack Compose has no views, so how do we test it? Come learn about the basics of UI testing in Jetpack Compose.

Dev Community Slack: Discussion and Q&A

- EDT
A page out of server driven UI
Adit Lal
Adit Lal
Adit Lal, Individual Consultant

This talk emphasises how and why building Android apps using a concept called Server Driven Architecture for our UI layer is so important and current hot-topic. We take a look at multiple offerings such as JetPack Compose or Epoxy (Airbnb's library) and we then take a look at some tips and tricks to navigate the code from start to finish.