This app was created as a challenge to show my skills as a mobile developer by creating a Real Estate App using Jetpack Compose, Kotlin, MVVM, Coroutines, Hilt, Room, Retrofit, Google Maps and more.
The challenge was to create an app using Jetpack Compose. The app shows a list of houses and their details, learn how to use navigation in Compose, the repository pattern, API calls, room, database, google maps and more.
Minimum SDK 24 (Android 7.0 Nougat).
The app has the following screens:
- Splash Screen
- List of Houses (With searchbar, searching by Postal Code or City)
- Detailed House
- About
(See screenshots above)
This app has been tested in a Pixel 3XL, to take in consideration the screen size and the density.
-
Clone this repository and open it in Android Studio.
- To use the app with location services, you need to have a Google Maps API key. You can get yours here.
-
Add the following lines to the
gradle.properties
file located in this path ComposeRealState/gradle.properties and add the following lines like this example below:GOOGLE_MAPS_API_KEY= "YOUR_API_KEY"
Note that the app will not work if you don't add the properties described above with a valid Maps API key.
-
To build and run the app.
-
To use it with location, accept the location permission.
-
This app can be used without location, but the distance shown will be "N/A".
-
If you want to know the different usage of code in the app, you can check the documentation and comments that are in the code.
App is based on MVVM architecture and a repository pattern.
The app uses Jetpack Compose Navigation.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change or any suggestions you have.
All the libraries used in this project are listed in the build.gradle file, indicating it usage in the app and the version.