- Xcode 10.1 + Carthage.
npm and Carthage are dependency managment tools for javascript and iOS respectively. Check their project website for installation guide.
After checking out project, build dependencies from carthage.
$ Resources/scripts/build-dependency.sh --carthage--carthage:for building carthage dependency
PS: Script will build carthage in debug mode. If you prefer release mode, add --release in addition.
- Quicksilver. Our Network library, handling HTTPDNS & Certificate Verification and so on.
- Rainbow. Our project module management framework & protocol.
- PureLayout. An autoLayout helper. You can still use iOS layout anchor or other machanism if you wish.
- SVProgressHUD. Our Heads up display (HUD).
- R.swift. Get strong typed, autocompleted resources like images, fonts and segues in Swift projects.
- FLEX. A set of in-app debugging and exploration tools for iOS development. Only copy when DEBUG or QA_BUILD
- RxSwift. Rx is a generic abstraction of computation expressed through Observable interface.
- CocoaLumberjackCocoaLumberjack is a fast & simple, yet powerful & flexible logging framework for Mac and iOS.
- KeychainSwift. Helper functions for storing text in Keychain.
Read our module management protocol Rainbow carefully before trying to have a comprehension over this project.
Here are some import files / directories you need to known.
Main application
RainbowProject module management configuration
ConfigurationEvery constant info like server base url, app key and so on should be managed inConfigurationnotServiceUserServiceUser model & Login/Logout.
UI dependency (Layout and etc.)
StyleLeetCode UI styleguide. Look into this when you need named Font / Color