<!-- [Status from the options: Proposed, Accepted, Rejected, Deprecated, Superseded] -->
-**Accepted**
## Context
<!-- [Description of the context and problem statement that the decision is addressing. It should contain any relevant factors that influenced the decision.] -->
We want to gradually move to Jetpack Compose to write UI code in App Lounge. To start with, we plan to rewrite the whole Search screen in Jetpack Compose.
Jetpack Compose enables us to write UI code in Kotlin. It's the current de-facto way of writing UI in Android.
## Decision
<!-- [Description of the decision that was made. Detail the change that will be implemented.] -->
- Introduce Jetpack Compose in the project.
- Rewrite the whole Search screen from scratch using Compose.
- Write any new UI in Compose.
- Gradually refactor UI code to Compose when possible.
## Consequences
<!-- [Explanation of the consequences of the decision. This includes both the positive and negative effects, and any potential risks.] -->
### Positive Consequences
- Less time to write UI code; maintainable and reusable with less boilerplate in XML
- Declarative Kotlin code for UI, easily unit testable
### Negative Consequences
- Initial migration for the project could be a bit challenging
- Fitting Jetpack Compose code to existing XML-based view system
- Initial learning curve and exploration for achieving the same feature written in XML