This is my new compilation of really inspirational, worthy to check, promising Android projects and libraries released or heavily refreshed in 2022.
I have listed projects written in Kotlin and Jetpack Compose in an unordered list so if you are eager to learn new things, check them all!
1. Maestro
This is huge! Maestro presents a fresh approach to UI tests build on experience from Appium, Espresso, UIAutomator, and XCTest.
It is built for both platforms (operates on emulators / simulators and physical devices, both) and uses yaml
language to create a test flow.
You can find a sample test flow below.
The project is really well documented and has low learning curve.
100% recommendation! You can learn more about it from an article Introducing: Maestro — Painless Mobile UI Automation.
License: Apache-2.0
2. Page Curl
This is a Jetpack Compose library for creating turning pages effect. Looks really cool!
Docs are pretty sufficient to quickly include the lib to your project.
Most likely it isn’t for your production code, but for some side project for sure!
License: Apache-2.0
3. Redwood
This is a library which could be a game changer in building reactive Android, iOS, and web UIs using Kotlin. Delivered by CashApp Development Team. What is Redwood?
Redwood integrates the Compose compiler, a design system, and a set of platform-specific displays. Each Redwood project is implemented in three parts:
A design system. Redwood includes a sample design system called ‘Sunspot’. Most applications should customize this to match their product needs.
Displays for UI platforms. The display draws the pixels of the design system on-screen. Displays can be implemented for any UI platform. Redwood includes sample displays for Sunspot for Android, iOS, and web.
Composable Functions. This is client logic that accepts application state and returns elements of the design system. These have similar responsibilities to presenters in an MVP system.
Btw, this is still in heavy development process, so be careful ☠️.
License: Apache-2.0
4. Compose Shimmer
This is a library which enables a shimmer effect for Android Jetpack Compose apps.
This effect was developed in order to create a shimmering effect that traverses the whole screen, highlighting only a certain subset of child views.
The library offers also quite advanced theming and usage, which you can check in the comprehensive docs.
License: Apache-2.0
5. Appyx
This is a model-driven navigation for Jetpack Compose from Bumble Engineering Team.
Using this lib you can:
- Navigate directly from code — In a type-safe way, without boilerplate
- Gain control of navigation state — Making your navigation unit-testable
- Complete control over operations and behaviour — Use and extend the back stack or the view pager from the library, or build your own
- Your own navigation — With Appyx, you can define your own navigation models
- Use any animation for transitions — Anything you can represent with Compose
Modifiers
Using a model-driven approach, navigation states are yours to define — Appyx makes it happen with any animation you can represent using Compose
Modifiers
.
The best way to learn about this cool approach is to check docs and a demo app in the project.
License: Apache-2.0
6. Twitter’s Jetpack Compose Rules
You probably know that Twitter’s engineering team heavily refactors theirs codebase to adopt Jetpack Compose. But when a big team with a large codebase start working on a challenging task like migrating to Compose, not everybody can be on the same page and follow all the rules.
If you use static analysis tools, these rules will come to the rescue and help to adopt Jetpack Compose to your project.
You can use them with:
License: Apache-2.0
7. Pokedex
Despite the fact I wrote about this project in 2020 on Medium in The 25 Best Android Libraries and Projects of 2020 — Summer Edition, it is still up-to-date and worthy to mention project. It is developed by Jaewoong Eum.
Pokedex demonstrates modern Android development with Hilt, Coroutines, Flow, Jetpack (Room, ViewModel), and Material Design based on MVVM architecture.
There is really neat documentation too.
License: Apache-2.0
8. Permission Flow for Android
This library, developed using Kotlin Flow, allows to get to know about real-time state of Android app permissions. You can observing permissions with StateFlow
as well as in Jetpack Compose using @Composable
annotation:
@Composable
fun ExampleSinglePermission() {
val state by rememberPermissionState(Manifest.permission.CAMERA)
if (state.isGranted) {
// Render something
} else {
// Render something else
}
}
The library is well written and has 87% test coverage. Also, README
is comprehensive and explains a usage of the lib well.
License: Apache-2.0
9. Seal
Seal is open-source Video/Audio downloader, designed and themed with Material You.
By studying this project you can learn how to download videos and audio files from video platforms supported by yt-dlp. You can use it to get to know more about Material Design 3 UI styling, especially with dynamic color theme.
The project is written according to MAD Skills principles.
License: GPL-3.0
10. UhuruPhotos. A LibrePhotos client
UhuruPhotos is an Android client for LibrePhotos written using the latest Android technologies (Jetpack Compose, SQLDelight, Coroutines) based on MVI architecture.
With features such as offline support, backup, and syncing, it aims to become a Google Photos alternative with a lot of similar features.
You can follow a development process on Github, or even participate in. You can also join a closed beta on the Google Play store.
License: Apache-2.0
That’s it. I hope you enjoyed the list and that some of the libs or projects inspired you. You can also check my other articles that have been released earlier this year or last year:
- 10 Almost Unknown Tools Which Facilitate Android Apps Development
- 25 Best Android Libraries, Projects, and Tools You Won’t Want to Miss Out in 2021
Till next time!
Top comments (0)