HarvestTime KMM

Multi-Platform Harvest Time Tracking clone project built with SwiftUI, Jetpack Compose, Compose for Wear OS,. Currently running on

  • Desktop JVM (Jetpack Compose) 🚧 WIP
  • Android (Jetpack Compose) 🚧 WIP
  • iOS (SwiftUI) 🚧 WIP
  • macOS (SwiftUI) 🚧 WIP
  • Web (ReactJS) 🚧 WIP
  • Android App Widget ⚠️ TODO
  • Wear OS (Compose for Wear OS) ⚠ TODO
  • iOS App Widget (SwiftUI) ⚠️ TODO
  • watchOS (SwiftUI) ⚠️ TODO

Build using PraxisKMP as the base project.

API

The Harvest API written in SpringBoot is WIP. Find the repo from here.

  • Find Organization ✅ DONE
  • Sign In User ✅ DONE
  • Sign Up User ✅ DONE
  • Forgot Password 🚧 WIP
  • Change Password 🚧 WIP

TODOs

  1. Koin does not allow to return dependencies with await() which affects providing SqlDriver on JSPlatform. Figure out a way for proper DI for SQlDriver. see issue here: InsertKoinIO/koin#388

Screenshots

  • Android (Jetpack Compose)

drawing

  • iOS (SwiftUI)

drawing

  • Web (ReactJS)

drawing

  • Compose Desktop (Compose for Desktop)

drawing

  • Android Wear OS (Compose for Wear OS)

drawing

  • watchOS (SwiftUI)

drawing

  • macOS (SwiftUI)

drawing

Languages, libraries and tools used

GitHub

View Github