Skip to content

bshpanchuk/WeatherApp

Repository files navigation

Test Weather App

Table of Contents

Task requirements

Requirements

Architecture

MVVM + MVI-ish

Libraries

Libraries used in the whole application are:

  • Kotlin 2.0
  • Jetpack🚀
    • Viewmodel - Manage UI related data in a lifecycle conscious way and act as a channel between use cases and ui
    • Room - provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite
  • Jetpack Compose - is Android’s recommended modern toolkit for building native UI
  • Places SDK - The autocomplete service returns place predictions in response to user search queries.
  • KSP - an API that you can use to develop lightweight compiler plugins
  • Ktor - type safe http client and supports coroutines out of the box
  • Kotlin Serialisation - a compiler plugin, that generates visitor code for serializable classes, runtime library with core serialization API and support libraries with various serialization formats
  • kotlinx.coroutines - Library Support for coroutines
  • Material 3 Design - build awesome beautiful UIs
  • Hilt - a standard way to incorporate Dagger dependency injection into an Android application

Build

  • Create secrets.properties file:

    PLACES_API_KEY=PLACES_API_KEY
    OPEN_WEATHER_API_KEY=OPEN_WEATHER_API_KEY

  • Place your key.jks in the keystore folder

  • Create keystore_config.gradle.dsl file in the keystore folder.

Demo

|||| Video

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published