/SwiftUI-KMM-MVVM

Simple App, Tech: SwifUI - MVVM - Kotlin Multi Platform - SwiftData | Mapkit, Swift Macros

Primary LanguageSwift

Jedlix iOS Case

Overview

EV Charging Locator is a modern application developed for iOS 17 and above devices. It helps electric vehicle (EV) owners find nearby charging stations conveniently. The app is built using SwiftUI and follows the MVVM architecture. Additionally, it utilizes Kotlin Multiplatform for the network layer and SwiftData for data storage.

Technologies Used

  • SwiftUI: The entire user interface of the app is developed using SwiftUI, providing a modern and flexible design.

  • Kotlin Multiplatform: The network layer is developed using Kotlin Multiplatform, enabling sharing of the same code across iOS and Android platforms.

  • Combine: Combine framework is used for reactive programming, enabling seamless data flow and handling of asynchronous events.

  • Observable Macros: SwiftUI Observable macros are used for managing state and triggering updates in the UI.

  • SwiftData: SwiftData is used for data storage and management, allowing for local storage of data with efficient retrieval.

Features

  • MVVM Architecture: The application is structured using the Model-View-ViewModel (MVVM) architecture, ensuring modularity, readability, and testability of the codebase.

  • Kotlin Multiplatform Network Layer: A network layer is developed using Kotlin Multiplatform for data exchange and integrated into the SwiftUI application.

  • Advanced Data Storage and Distribution: SwiftData is used for data storage and distribution, allowing for local storage of data with easy retrieval when needed.

  • Find Charging Stations: Users can easily discover nearby EV charging stations through the app in map or list view.

  • View Detailed Information: Access detailed information about each charging station, including address, availability status, charging types, and more.

  • Favorites: Users can locally store favorite charging stations and mark them for quick access later.

diagramjedlix drawio

Frameworks: Widgetkit-SwiftUI-KMM

Getting help

If you have questions, concerns, reports, etc, please contact me: bahadirsoftware@gmail.com

Screenshots

gif1.mp4
gif2.mp4