Skip to content

Instantly share code, notes, and snippets.

View ferologics's full-sized avatar
🔥
🔆 〰️ 🌑

Fero ferologics

🔥
🔆 〰️ 🌑
View GitHub Profile
@ferologics
ferologics / UserFromForegroundKillApp.swift
Created April 5, 2024 08:06
Detect user killing the app from foreground
//
// UserFromForegroundKillApp.swift
// UserFromForegroundKill
//
// Created by f h on 12/03/2024.
//
import SwiftUI
@main
@ferologics
ferologics / apiTypes.ts
Last active September 28, 2023 12:57
Orders App API types
/**
* ISO 8601 timestamp
* */
export type Timestamp = string;
export enum RouteStatus {
assigned = 'assigned',
completed = 'completed',
planned = 'planned',
tracking = 'tracking',

[fit] Algebra to

[fit] (Co)monads


$$Cᴮᴬ = (Cᴮ)ᴬ$$


$$Cᴮᴬ = (Cᴮ)ᴬ$$

$$Pair<A,B> → C ≅ A → B → C$$

@ferologics
ferologics / DynamicFontLineHeight.swift
Created December 23, 2021 12:02
this example uses Dynamic Font with respect to line height line height
// MARK: - Helper
struct Layout { // this uses Dynamic Font and calculates spacing for correct line height
static let weight = SwiftUI.Font.Weight.semibold
static let size = UIFontMetrics.default.scaledValue(for: 17)
static let lineHeight = UIFontMetrics.default.scaledValue(for: 22)
static let uiFont = UIFont.systemFont(ofSize: size, weight: weight.toUIKit())
static let spacing = max(0, lineHeight - uiFont.lineHeight)
}
require 'optimist'
require 'plist'
# Setups of source path mapping for the framework at framework_path,
# which has a dsym at dsym_path. It maps the source paths to the
# source_path root. Implementation borrowed from https://medium.com/@maxraskin/background-1b4b6a9c65be
def setup_dsym_source_mapping(framework_path, dsym_path, source_path)
binary_uuids = get_uuids_of_dwarf(framework_path)
dsym_uuids = get_uuids_of_dwarf(dsym_path)
verify_uuids(binary_uuids, dsym_uuids)
@ferologics
ferologics / tmux.conf
Created October 14, 2020 21:21 — forked from spicycode/tmux.conf
The best and greatest tmux.conf ever
# 0 is too far from ` ;)
set -g base-index 1
# Automatically set window title
set-window-option -g automatic-rename on
set-option -g set-titles on
#set -g default-terminal screen-256color
set -g status-keys vi
set -g history-limit 10000
@ferologics
ferologics / tmux-cheatsheet.markdown
Created October 14, 2020 21:17 — forked from MohamedAlaa/tmux-cheatsheet.markdown
tmux shortcuts & cheatsheet

tmux shortcuts & cheatsheet

start new:

tmux

start new with session name:

tmux new -s myname
ACTION = build
AD_HOC_CODE_SIGNING_ALLOWED = NO
ALTERNATE_GROUP = staff
ALTERNATE_MODE = u+w,go-w,a+rX
ALTERNATE_OWNER = grantdavis
ALWAYS_SEARCH_USER_PATHS = NO
ALWAYS_USE_SEPARATE_HEADERMAPS = YES
APPLE_INTERNAL_DEVELOPER_DIR = /AppleInternal/Developer
APPLE_INTERNAL_DIR = /AppleInternal
APPLE_INTERNAL_DOCUMENTATION_DIR = /AppleInternal/Documentation
@ferologics
ferologics / Logger.swift
Last active July 2, 2018 20:29
Simple logger; to be modularised in to a framework
import Foundation
fileprivate let logName = "debug.log"
fileprivate var debugLog = "" {
didSet {
var _debugLog = debugLog
guard let rangeOfOldCharacetrs = _debugLog.range(of: oldValue) else { return }
_debugLog.removeSubrange(rangeOfOldCharacetrs)
let directory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first
import Foundation
import RxSwift
// Source - https://medium.com/ios-os-x-development/learn-and-master-%EF%B8%8F-the-basics-of-rxswift-in-10-minutes-818ea6e0a05b
// MARK: - Observable seaquences
let helloSequence = Observable.just("goteeem")
let fibbonachiSequence = Observable.from([0,1,1,2,3,5])
let dictSequence = Observable.from([1:"Got",2:"Em"])