Knowledges: Swift

Knowledges: Swift

๐Ÿ–– Introduction

This page includes links to articles and tools related to our Swift-based stacks. The goal is to keep a history of the reflections and conclusions made for the construction of the stack.

๐Ÿ“‘ Informations

  • Bold : used
  • Italic : not used

๐Ÿ”— Menu

Architecture

๐Ÿ“„ Articles :

๐Ÿ”ง Tools :

๐Ÿš€ Conclusion

Store Based like MVVM (= Angular repository)
Framework ??? in reflexion

Dependencies

๐Ÿ“„ Articles :

๐Ÿ”ง Tools :

  • SPM Swift Package manager
  • Carthage
  • Pods

๐Ÿš€ Conclusion

Probably Carthage.

Tests

๐Ÿ“„ Articles :

  • WIP

๐Ÿ”ง Tools :

  • Quick - The Swift (and Objective-C) testing framework.
  • Nimble - A Matcher Framework for Swift and Objective-C.
  • RxBlocking - Set of blocking operators for easy unit testing.
  • Stubber - A minimal method stub for Swift.

๐Ÿš€ Conclusion

WIP

CI

๐Ÿ“„ Articles :

๐Ÿ”ง Tools :

  • Travis - way to test and deploy your projects
  • Circle - way to test and deploy your projects
  • Fastlane - App automation done right for iOS
  • Coveralls - See coverage trends emerge
  • CodeClimate - Get automated code coverage, complexity, duplication ..
  • SwiftLint - A tool to enforce Swift style and conventions
  • SwiftGen - Swift code generator for assets, storyboards, Localizable ...
  • slather - Generate test coverage reports for Xcode projects
  • Danger - runs after your CI, automating your team's conventions

๐Ÿš€ Conclusion

Travis, Codeclimate, Fastlane + Slather + Coveralls, SwiftLint & SwiftGen, the goal being to stay close to the functioning of repo node / angular

Logs

๐Ÿ“„ Articles :

๐Ÿ”ง Tools :

  • CocoaLumberjack - A fast & simple, yet powerful & flexible logging framework for Mac and iOS

๐Ÿš€ Conclusion

CocoaLumberjack due to libhunt

Configuration

๐Ÿ“„ Articles :

๐Ÿ”ง Tools :

๐Ÿš€ Conclusion

We search a simple way to manage hierarchical configuration in the Node repo style (one by env, merged on build). We did not find anything, the IBM package is server side, so it will be done by hand ..