Skip to content

Instantly share code, notes, and snippets.

@auramagi
auramagi / ConsoleOutput.txt
Last active February 16, 2026 19:06
SwiftUI _viewDebugData
// Output of print(_viewDebugData), formatted for easier viewing
[SwiftUI._ViewDebug.Data(
data: [
SwiftUI._ViewDebug.Property.value: SwiftUI._SafeAreaInsetsModifier(elements: [], nextInsets: nil),
SwiftUI._ViewDebug.Property.displayList: (display-list
(item #:identity 2 #:version 6
(frame (143.66666666666666 354.0; 88.0 20.333333333333332))
(text "Hello World" #:size (88.0, 20.333333333333332))
)
@auramagi
auramagi / !WWDC25.md
Last active February 1, 2026 01:59
Transcripts from all WWDC 2025 sessions

Transcripts from all WWDC 2025 sessions

@auramagi
auramagi / AlertPresentationWindow.swift
Last active December 19, 2025 12:40
Global alert handler for SwiftUI
import SwiftUI
private struct AlertPresentationWindow: View {
@ObservedObject var service: ErrorStateService
var body: some View {
Color.clear
.alert(
service.alerts.first?.title ?? "Error",
isPresented: .init(
@auramagi
auramagi / ContentView.swift
Created July 10, 2025 00:01
UIScrollEdgeElementContainerInteraction test
import SwiftUI
struct ContentView: View {
var body: some View {
// 1: Not nested in NC
ListVCRepresentable()
.ignoresSafeArea()
// 2: Nested in NC
// NavigationStack {
@auramagi
auramagi / Effect.swift
Last active March 27, 2025 03:14
Swift Concurrency + ViewModel action handling
enum Effect {
/// Action completed synchronously
case none
/// Action produced a task
case task(Task<Void, Never>)
/// Notify about completion in a closure
func onCompletion(_ completion: @escaping () -> Void) {
switch self {
@auramagi
auramagi / WaterfallLayout.swift
Created June 27, 2022 10:52
Waterfall Layout with SwiftUI Layout protocol
import SwiftUI
struct ContentView: View {
typealias Item = (Color, CGFloat)
@State private var columnCount = 3
@State private var isWaterfall = true
@State var items: [Item] = [
@auramagi
auramagi / ImageRendererModifier.swift
Created June 7, 2022 08:08
Using SwiftUI ImageRenderer in view modifier-like view extension
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello WWDC22")
.rendered(scale: 2)
}
}
struct ContentView_Previews: PreviewProvider {
import SwiftUI
struct BlobbySymbol<Primary: View, Alternative: View>: Animatable, View {
private var progress: Double = 0
var animatableData: Double {
get { progress }
set { progress = newValue }
}
@auramagi
auramagi / ReadMore.swift
Last active June 25, 2024 23:06
SwiftUI read more component. Requires iOS 16.
import SwiftUI
struct ContentView: View {
var text = "long text"
@State private var lines = 3.0
var body: some View {
ScrollView {
ReadMore(lineLimit: Int(lines)) {
import MediaPlayer
import SwiftUI
struct ContentView: View {
@State var sliderValue: Float = 0
@StateObject var observer = VolumeObserver()
var body: some View {
VStack {