Skip to content

ddpatel2606/MyCoffeeVenue

Repository files navigation

MyCoffeeVenue

Nearest Coffee Venue Details Demo

ForeSquare NearbyVenue Listing Api

Instructions

  • If you want to use your client secret and client Id
    Go to --> API.kt file

    // Foursquare API client Id
    const val CLIENT_ID = "YOUR CLIENT ID"

    // Foursquare API client secret
    const val CLIENT_SECRET = "YOUR CLIENT SECRET"

Activities

  • SplashActivity - Ask user permission to get current location.
  • MainActivity - Listing Nearby Coffee Venue and display on Map.

Tech stack & Open-source libraries

  • Minimum SDK level 24 to 30 (Latest)

  • Kotlin based,

  • Coroutines for asynchronous.

  • Coroutines Flow

  • Dagger dependency injection.

  • JetPack

    • LiveData - notify domain layer data to views.
    • Lifecycle - dispose of observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
  • Architecture

    • MVVM Architecture (Model View ViewModel - DataBinding)
    • Repository Design Pattern
  • Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.

  • HttpInterceptor - An OkHttp interceptor which logs HTTP request and response data.

  • Gson - A modern JSON library for Kotlin and Java.

  • Picasso - loading images.

  • Timber - logging.

  • Material-Components - Material design components like ripple animation, cardView.

  • Custom Views

  • CircularProgressView - A polished and flexible CircleProgressView, fully customizable with animations.

Images

MainActivity : Dark Mode

MainActivity : Light Mode

About

Nearest Coffee Venue Details Demo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published