igorkulman / Iossampleapp
Licence: mit
Sample iOS app demonstrating Coordinators, Dependency Injection, MVVM, Binding
Stars: ✭ 510
Programming Languages
swift
15916 projects
Projects that are alternatives of or similar to Iossampleapp
Swinjectmvvmexample
An example to use Swinject in MVVM architecture with ReactiveCococa
Stars: ✭ 301 (-40.98%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Papr
🌁 An Unsplash app for iOS
Stars: ✭ 1,025 (+100.98%)
Mutual labels: rxswift, mvvm, mvvm-architecture
Flair
This is powerful android framework
Stars: ✭ 31 (-93.92%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Xaml Code Experiences
A collection of the experiences I have collected during days of Xamarin and Wpf, while following the MVVM design pattern.
Stars: ✭ 114 (-77.65%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Xcoordinator
🎌 Powerful navigation library for iOS based on the coordinator pattern
Stars: ✭ 1,752 (+243.53%)
Mutual labels: rxswift, mvvm, mvvm-architecture
Kodein Mvvm
Example app using Kodein for dependency injection with MVVM and Architecture Components
Stars: ✭ 26 (-94.9%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Harrypotter
🧙🏻 Sample HarryPotter application based on MVVM architecture (ViewModel, LiveData, Repository, Coroutines, Koin or Dagger-Hilt)
Stars: ✭ 116 (-77.25%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Marvelheroes
❤️ A sample Marvel heroes application based on MVVM (ViewModel, Coroutines, LiveData, Room, Repository, Koin) architecture.
Stars: ✭ 826 (+61.96%)
Mutual labels: mvvm, dependency-injection, mvvm-architecture
Bark
Bark is an iOS App which allows you to push customed notifications to your iPhone
Stars: ✭ 2,371 (+364.9%)
Mutual labels: rxswift, mvvm, mvvm-architecture
Rxgithub
An example of MVVM using RxSwift and Swinject (DI)
Stars: ✭ 109 (-78.63%)
Mutual labels: rxswift, mvvm, dependency-injection
Ios
A sample project demonstrating MVVM, RxSwift, Coordinator Pattern, Dependency Injection
Stars: ✭ 49 (-90.39%)
Mutual labels: rxswift, mvvm, dependency-injection
Cathay
an iOS project for demonstration of Reactive Programming
Stars: ✭ 21 (-95.88%)
Mutual labels: rxswift, carthage, mvvm
Swifthub
GitHub iOS client in RxSwift and MVVM-C clean architecture
Stars: ✭ 2,330 (+356.86%)
Mutual labels: rxswift, mvvm, mvvm-architecture
TVToday
iOS TV Shows app with TMDb Api. RxSwift, MVVM, Clean Architecture. Tuist + Swift Package Manager
Stars: ✭ 27 (-94.71%)
Mutual labels: rxswift, dependency-injection, mvvm
Clean Mvvm Archcomponents
👽 Android app consuming Star Wars API.Built with clean architecture ,MVVM pattern, Koin , Coroutines + Flows ,Architecture Components, Data Binding , Firebase , Unit/UI Tests ,Motion Layout
Stars: ✭ 285 (-44.12%)
Mutual labels: mvvm, mvvm-architecture
Verge
🟣 Verge is a very tunable state-management engine on iOS App (UIKit / SwiftUI) and built-in ORM.
Stars: ✭ 273 (-46.47%)
Mutual labels: rxswift, mvvm
Cleanarchitecturerxswift
Example of Clean Architecture of iOS app using RxSwift
Stars: ✭ 3,256 (+538.43%)
Mutual labels: rxswift, mvvm
Kotlin Android Mvvm Starter
Android Kotlin Starter is a starter project which implements MVVM Pattern.
Stars: ✭ 276 (-45.88%)
Mutual labels: mvvm, mvvm-architecture
Themovies2
🎬 A demo project using The Movie DB based on Kotlin MVVM architecture and material design & animations.
Stars: ✭ 297 (-41.76%)
Mutual labels: mvvm, mvvm-architecture
Android Viewmodelbinding
A lightweight library aiming to speed up Android app development by leveraging the new Android Data Binding together with the Model-View-ViewModel design pattern.
Stars: ✭ 308 (-39.61%)
Mutual labels: mvvm, binding
iOS Sample App
Sample iOS app written the way I write iOS apps because I cannot share the app I currently work on.
Shown concepts
Architecture concepts
- Coordinators
- Dependency Injection
- MVVM
- Data Binding
- Dependencies management
Other concepts
- Localization to 2 languages with safer string usage and checking for missing translations
- Continuous integration with Github Actions and Danger
- Unit testing, including testing view controllers for leaks
- Using (multiple) Storyboards just as glorified XIBs
- Creating a view controller in code when Storyboard cannot be used
- Using static UITableView cells in a typed way with enums
- Image literals
- Automated AppStore screenshots taking in multiple languages
- Adding custom reactive properties
- Basic Dark mode support
Getting started
Prerequisites
Built with
- RxSwift - Reactive Programming in Swift
- RxSwiftExt - A collection of Rx operators & tools not found in the core RxSwift distribution
- Swinject - Dependency injection framework for Swift
- Reusable - A Swift mixin for reusing views easily and in a type-safe way
- Nuke - A powerful image loading and caching system
- FeedKit - An RSS, Atom and JSON Feed parser written in Swift
- NotificationBanner - The easiest way to display highly customizable in app notification banners in iOS
- SpecLeaks - Unit Tests Memory Leaks in Swift. Write readable tests for mem leaks easily with these Quick and Nimble extensions
- Quick - The Swift (and Objective-C) testing framework
- Nimble - A Matcher Framework for Swift and Objective-C
Author
Igor Kulman - [email protected]
License
This project is licensed under the MIT License - see the LICENSE file for details
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].