Skip to content

Instantly share code, notes, and snippets.

View byaruhaf's full-sized avatar
🏄
Surfing Xcode

Franklin Byaruhanga byaruhaf

🏄
Surfing Xcode
View GitHub Profile
@byaruhaf
byaruhaf / RequestState.kt
Created March 17, 2024 05:32 — forked from stevdza-san/RequestState.kt
Useful wrapper class for handling the data in Jetpack Compose
import androidx.compose.animation.AnimatedContent
import androidx.compose.animation.core.tween
import androidx.compose.animation.fadeIn
import androidx.compose.animation.fadeOut
import androidx.compose.animation.togetherWith
import androidx.compose.runtime.Composable
sealed class RequestState<out T> {
data object Idle : RequestState<Nothing>()
data object Loading : RequestState<Nothing>()
@byaruhaf
byaruhaf / Terminal Output
Created September 30, 2023 20:15
lint collection.json
❯ redocly lint collection.json [23:11:38]
No configurations were provided -- using built in recommended configuration by default.
validating collection.json...
[1] collection.json:1778:9 at #/paths/~1v2_0~1invoice~1{referenceId}
The path already exists which differs only by path parameter name(s): `/v2_0/invoice/{x-referenceId}` and `/v2_0/invoice/{referenceId}`.
1776 | }
1777 | },
struct ContentView: View {
@State private var isPresented = false
var body: some View {
Button("Present!") {
isPresented.toggle()
}
.fullScreenCover(isPresented: $isPresented, content: FullScreenView.init)
}
}
import SwiftUI
struct FullScreenView: View {
@Environment(\.dismiss) var dismiss
@State private var name = "Taylor"
var body: some View {
ZStack {
Color.primary.edgesIgnoringSafeArea(.all)
VStack {
@byaruhaf
byaruhaf / PhotosGridViewDraggableX.swift
Last active November 3, 2023 23:19
PhotosGridViewDraggableX
//
// ContentView.swift
// TestDrag
//
// Created by Franklin Byaruhanga on 23/09/2023.
//
import SwiftUI
struct ColorItemView: View {
@byaruhaf
byaruhaf / libs.versions.toml
Created September 16, 2023 16:16 — forked from BobbyESP/libs.versions.toml
A very complete TOML file for Android Development mainly thought for the new Jetpack Compose framework
[versions]
accompanist = "0.29.2-rc"
androidGradlePlugin = "7.4.2"
androidxComposeBom = "2023.01.00"
androidxComposeCompiler = "1.4.6"
androidxCore = "1.10.0-rc01"
androidMaterial = "1.9.0-alpha02"
androidxAppCompat = "1.7.0-alpha02"
androidxActivity = "1.7.1"
markdownDependency = "0.3.2"
Company:
Role:
Full-time:
Remote OK:
Sponsorship:
Salary Range: [Actual range, not "Based on experience or skillset, location" or so forth]
Contact:
Location:
Relocation Assistance:
Brief Description:
@byaruhaf
byaruhaf / Searchable_iOS16.swift
Created July 18, 2023 00:31 — forked from marcoarment/Searchable_iOS16.swift
Backporting iOS 17's SwiftUI .searchable($isPresented) binding for iOS 16
import SwiftUI
extension View {
public func searchable_iOS16(text: Binding<String>, isPresented: Binding<Bool>, placement: SearchFieldPlacement) -> some View {
modifier(Searchable_iOS16(text: text, isPresented: isPresented, placement: placement))
}
}
public struct Searchable_iOS16: ViewModifier {
@Binding var text: String
//
// WheelView.swift
// ShowcaseShareCard
//
// Created by Ryan Gittings on 10/07/2023.
//
import SwiftUI
struct ContentView: View {
@byaruhaf
byaruhaf / LocalNotifications.swift
Created June 30, 2023 23:08 — forked from SwiftfulThinking/LocalNotifications.swift
Local Push Notifications for iOS (incl. convenience methods and async support)
import Foundation
import UIKit
import UserNotifications
import CoreLocation
enum NotificationTriggerOption {
case date(date: Date, repeats: Bool)
case time(timeInterval: TimeInterval, repeats: Bool)
case location(coordinates: CLLocationCoordinate2D, radius: CLLocationDistance, notifyOnEntry: Bool, notifyOnExit: Bool, repeats: Bool)