The project is meant to familiarize myself with JetPack Compose since that's going to be the dominant Android UI framework once it's released. It's similar to React Native and Flutter, although it's specific to Android and doesn't support cross-OS compilation.
The code is very messy and needs a lot of work, but the point was to get my hands dirty with JetPack Compose (don't judge)
- done: Simple navigation between top-level screens
- done: Login functionality
- todo: Registration
- todo: Password reset
- todo: input validation
- todo: a lot more, like adding Amazon Amplify DataStore.
- Before working with this project you need to setup a Cognito User Pool and add an 'awsconfiguration.json' with the appropriate user pool configurations under './app/src/main/res/raw/' (more instructions here):
{
"IdentityManager": {
"Default": {}
},
"CognitoUserPool": {
"Default": {
"PoolId": "XX-XXXX-X_abcd1234",
"AppClientId": "XXXXXXXX",
"AppClientSecret": "XXXXXXXXX",
"Region": "XX-XXXX-X"
}
}
}
- Install the Android Studio Canary build. This project only works with the canary version since it needs a special Kotlin compiler
- Clone this project
- Open the project with Android Studio
- Under the 'Run' tab select 'Run app'
- Enjoy
My goal wasn't to create the most beautiful app so the UI will eventually improve, but here's what a login screen looks like: