/Food2Fork-KMM

Kotlin Multiplatform project that gets network data from Food2Fork.ca

Primary LanguageKotlin

Food2Fork App Icon Food2Fork Recipe App

This is the codebase for a Kotlin Multiplatform Mobile course. Watch the course

List to Detail screen

Searching

Architecture

Shared Components

  1. Ktor (Network Client)
  2. SQL Delight (Caching Client)
  3. Kotlinx.datetime

Android Specific Components

  1. Jetpack Compose
  2. Jetpack Compose Navigation
    • (Single activity, zero fragments)
  3. Accompanist Coil
  4. Hilt
    • I decided to use AAC ViewModel because it gives so much state management stuff for free. Maybe in the future a shared viewmodel will be more practical. I'll talk about this in detail in the course.
    • See this tweet thread if you want to do some reading: https://twitter.com/ianhlake/status/1388517293005574144

iOS Specific Components

  1. SwiftUI


Android Studio Version

The project dependencies have been updated and you can use Android Studio Bumblebee (2021.1.1) Canary 3. Download from the archive here.

Kotlin Multiplatform Talks

  1. Mitch Tabian
    1. Is Kotlin Multiplatform Ready for Production?
    2. KMM - Fragmented Podcast
  2. Daniele Barconcelli
  3. Ekaterina Petrova
  4. Dmitry Savvinov
  5. Kevin Galligan
  6. Ben Asher and Alec Strong