periclesm / nimbus-ios

A sample iOS app with REST API calls. Using RealmDB for caching. All code in Swift. Custom made networking for data fetching.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nimbus for iOS

Nimbus is a reference application, a compendium of several techniques and architectural implementations in a test use-case on the iOS platform.

Simply put, the app:

  • Fetches data from the internet through an API (json),
  • Parses the data into objects to be used in the app,
  • Stores the data in a Realm DB,
  • Queries and retrieves data to display in the User Interface.

This reference app is making use of:

  • Initially started as an Obj-C project, now it has moved to Swift (there are a few Obj-C grains here and there),
  • Uses Cocoa Pods for necessary third-party SDKs and APIs (do a pod install after cloning -- not all code is commited due to GitHub space limits),
  • Implements Realm DB to store data. Originally Core Data were used but Realm came as a replacement due to it's interoperability (see Android) and ease of use,
  • A custom Network Wrapper updated for iOS 15+ with async/await (though it's not complete to handle all network connections and calls)
  • Loose MVVM architecture (Don't expect to see codexes, canons and gospels here. I use what I see fit on a simple app such as this)
  • UIKit. Chneck the SwiftUI branch for... well, SwiftUI (still under development)

About

A sample iOS app with REST API calls. Using RealmDB for caching. All code in Swift. Custom made networking for data fetching.


Languages

Language:Swift 99.5%Language:Ruby 0.5%