Skip to content

Bored is an App which make suggestions of activities in bored moments.

License

Notifications You must be signed in to change notification settings

thiagocenturion/bored-ios-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iOS Bored App

Bored is an App which make suggestions of activities in bored moments.

Swift Version Build Status License Platform PRs Welcome

API https://www.boredapi.com (Documentation)

Features

  • Reactive programming with RxSwift.
  • MVVM with reactive Coordinator pattern.
  • Reactive and componentized API services layer.
  • Unit tested modules with Quick & Nimble.
  • SOLID, Independency Injection, Stubs and Mocks.
  • JSON parses with SwiftyJSON.

Run Sample

  1. Clone this repository.
    git clone https://github.com/thiagocenturion/bored-ios-app.git
    
  2. Go to Bored folder.
  3. Open Terminal and run pod install.
  4. Wait for the instalation.
  5. Open Bored.xcworkspace.

Requirements

  • iOS 14.5+
  • Xcode 12.5

Architecture Pattern

The architecture pattern for this application is MVVM with reactive Coordinator, using RxSwift.

Unit Tests

This project tests almost all MVVM-C layers. For that, it was necessary to create Stub and Spy of UIKit native classes, such as UIViewController and UINavigationController using protocols.

Project Navigator

Project Navigator for app target and unit test target:

Technical Debts

  • We still need to create the unit tests for screens NewActivity, ListActivities and FilterActivities.

Meta

Thiago Centurion – thiagocenturion@me.com

Distributed under the MIT license. See LICENSE for more information.

https://github.com/thiagocenturion/github-link

About

Bored is an App which make suggestions of activities in bored moments.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published