Skip to content

Instantly share code, notes, and snippets.

View basvankuijck's full-sized avatar

Bas van Kuijck basvankuijck

View GitHub Profile
@basvankuijck
basvankuijck / CocoaPods pod quality badge
Last active August 29, 2015 14:27
A shields.io badge which shows the CocoaPods quality index
[![Quality](https://apps.e-sites.nl/cocoapodsquality/ESOpenSourceLicensesKit/badge.svg)](https://cocoapods.org/pods/ESOpenSourceLicensesKit/quality)
@basvankuijck
basvankuijck / ArraySumExtension.swift
Last active October 13, 2017 08:15
Benchmarking Array.sum() extensions
#!/usr/bin/env xcrun swift
import Foundation
extension Array where Element: Numeric {
func sumForEach() -> Element {
var total: Element = 0
forEach { total += $0 }
return total
}
@basvankuijck
basvankuijck / gist:32693fd517c641f94c13295344f9620e
Last active September 20, 2018 08:23
XCode10 window dump
<IDEWorkspaceWindow: 0x7fdd50e219d0>
= <DVTControllerContentView_ControlledBy_IDEWorkspaceTabController> {{0, 0}, {1920, 1085}}
= <DVTSplitView> {{0, 0}, {1920, 1085}}
= <DVTReplacementView> {{0, 0}, {350, 1085}}
= <NSView_ControlledBy_IDENavigatorArea> {{0, 0}, {350, 1085}}
= <NSVisualEffectView> {{0, 0}, {350, 1085}}
= <DVTSplitViewDividerLine> {{349, 0}, {1, 1085}}
= <DVTBorderView> {{0, 1056}, {349, 1}}
= <DVTChooserView> {{0, 1057}, {349, 28}}
@basvankuijck
basvankuijck / deploy.sh
Created June 28, 2019 08:19
Blue green deployment IBM cloudfoundry
#!/bin/bash
# Asume that the following routes are available / set:
# <APP_GREEN>.<DOMAIN>
# <APP_BLUE>.<DOMAIN>
# <LIVE_ROUTE>.<DOMAIN>
APP_GREEN="AppName-green"
APP_BLUE="AppName-blue"
LIVE_ROUTE="app"
@basvankuijck
basvankuijck / Fastfile
Created September 5, 2019 14:38
Fastlane / firebase / buildkite
lane :upload do
suppress_output {
firebase_app_distribution(
app: "<app_id>,
firebase_cli_path: "/usr/bin/firebase-tools-macos"
)
}
end
def self.suppress_output
@basvankuijck
basvankuijck / build-phase.sh
Created September 20, 2019 08:46
Xcode11 Adhoc Build phase
# Add this right after the "Dependencies" build phase
if [ "$CONFIGURATION" = "Adhoc" ]; then
RELEASE_DIR="$BUILT_PRODUCTS_DIR/../Release-$PLATFORM_NAME/"
if [ -d "$RELEASE_DIR" ]; then
echo "Copying contents of $RELEASE_DIR to $BUILT_PRODUCTS_DIR ..."
(cd "$RELEASE_DIR"; cp -r * "$BUILT_PRODUCTS_DIR")
echo "Done!"
fi
fi
@basvankuijck
basvankuijck / Coordinator.swift
Last active December 10, 2019 13:44
Coordinator.swift
import Foundation
import UIKit
protocol Coordinator: class {
var navigationController: UINavigationController { get set }
var parentCoordinator: Coordinator? { get set }
func start()
func start(coordinator: Coordinator)
func removeChildCoordinators()
@basvankuijck
basvankuijck / BaseCoordinator.swift
Last active December 10, 2019 14:29
BaseCoordinator.swift
import Foundation
import UIKit
import RxSwift
import RxCocoa
private var coordinatorKey: UInt8 = 0
class BaseCoordinator: Coordinator {
lazy var disposeBag = DisposeBag()
@basvankuijck
basvankuijck / AppCoordinator.swift
Last active December 10, 2019 10:51
AppCoordinator.swift
import UIKit
import Foundation
class AppCoordinator: BaseCoordinator {
func setup(with window: UIWindow?) {
window?.rootViewController = navigationController
window?.makeKeyAndVisible()
}
override func start() {
@basvankuijck
basvankuijck / LoginCoordinator.swift
Last active December 10, 2019 14:30
LoginCoordinator.swift
import Foundation
import UIKit
import RxSwift
protocol SignInListener {
func didSignIn()
}
class LoginCoordinator: BaseCoordinator {
override func start() {