stackotter
banner
stackotter.dev
stackotter
@stackotter.dev
Aussie software developer & uni student; Rock climber; Loves Swift, Rust and Svelte; Creator of SwiftCrossUI, Swift Bundler and Delta Client.

https://stackotter.dev
https://mastodon.social/@stackotter
SwiftCrossUI recently gained support for onHover thanks to MiaKoring!
October 25, 2025 at 9:02 AM
I forgot to update my system-wide Swift Bundler to the latest version for Mac Catalyst support, and I was graced by a very informative error automatically generated by the wonderful swift-parsing package by @[email protected]
October 23, 2025 at 2:31 AM
Found a great article about bypassing macOS's 2 macOS guest VM limit. Definitely worth a read! (even though I won't actually do what they discussed because it involves running a debug kernel)

khronokernel.com/macos/2023/0...
Apple Silicon and Virtual Machines: Beating the 2 VM Limit
macOS Internals Deep Dive Building a Development Kernel Collection Configuring our Mac to boot the Development Kernel Collection Putting our machine to work! When did Apple grace us with this feature?...
khronokernel.com
October 22, 2025 at 11:26 PM
Swift Bundler now supports targeting Mac Catalyst. Use the `--platform macCatalyst` command line option to try it out.

You can optionally set the interface idiom (often called Optimize for Mac) as seen in attached configuration.

github.com/stackotter/s...
October 22, 2025 at 1:51 AM
Finally got around to updating the Swift Bundler docs to reflect the latest config file format. If platform-specific configuration overlays and custom builders (for e.g. pulling in CMake dependencies) sound interesting, check out the configuration article!

swiftbundler.dev/documentatio...
Documentation
swiftbundler.dev
October 22, 2025 at 1:49 AM
Reposted by stackotter
This is lovely, SwiftUI for Windows and Linux:

swiftcrossui.dev
SwiftCrossUI
swiftcrossui.dev
July 15, 2025 at 12:11 AM
SwiftCrossUI now supports strict concurrency, thanks to Beberka’s recent PR adding all the necessary annotations!

The main thing that held back concurrency support for so long was MainActor not working with Gtk on Linux, but I fixed that issue recently by polling the main job queue with Gtk timers.
June 27, 2025 at 11:14 PM
I'm working on making it easier to make platform-specific changes to SwiftCrossUI's underlying backend views. I've taken inspiration from swiftui-introspect.

This sort of flexibility will be super useful for more advanced user interfaces.
June 24, 2025 at 2:52 PM
SwiftCrossUI now supports dynamic text styles!

They adapt to the current 'device class'. Sizes and weights were roughly taken from Apple's typography guidelines (with some extrapolation to fill in missing text styles on certain platforms).
June 24, 2025 at 5:19 AM
SwiftCrossUI has a basic multi-line TextEditor view now!
June 23, 2025 at 3:24 PM
Reposted by stackotter
I wanted to get a sence of what it means to use another UI framework in Swift for Linux and Windows. So I picked Qt6 and... hello world 😍! Swift's C++ interop is brilliant, the entire wrapper can be a target in the same Swift Package as the app itself!

#Swift #Qt6 #LinuxDev #WindowsDev
June 21, 2025 at 11:30 AM
Thank you to everyone who popped by during the stream 🙏

SwiftCrossUI's AndroidBackend prototype now supports basic buttons, text and stacks. The example may not look like much, but we solved quite a few foundational challenges which will make future progress much faster!
June 13, 2025 at 3:24 PM
Join me on Twitch as I work on bringing SwiftCrossUI to Android! 🤖 Live in 10 minutes

twitch.tv/stackotter
stackotter - Twitch
Bringing SwiftCrossUI to Android
twitch.tv
June 13, 2025 at 11:55 AM
Join me on Twitch tonight at 10pm AEST (2pm CET, 5am PST) as I work on bringing SwiftCrossUI to Android! 🤖

www.twitch.tv/stackotter

I'll be playing around with a few different approaches including giving AndroidUIKit a go.
stackotter - Twitch
Aussie software developer & uni student; Rock climber; Loves Swift, Rust and Svelte; Creator of SwiftCrossUI, Swift Bundler and Delta Client.
www.twitch.tv
June 13, 2025 at 5:21 AM
Join me on Twitch as I attempt to add web views to SwiftCrossUI! I've heard Apple has plans for SwiftUI, so might as well beat them to the punch!

www.twitch.tv/stackotter

I'll be explaining any SwiftCrossUI internals that we come across, and explaining my development process!
stackotter - Twitch
Aussie software developer & uni student; Rock climber; Loves Swift, Rust and Svelte; Creator of SwiftCrossUI, Swift Bundler and Delta Client.
www.twitch.tv
June 9, 2025 at 11:24 AM
Implicitly Opened Existentials (SE-0352) are the gift that keeps on giving. I love them so much. Their use cases are rare (in ‘well written’ code), but when you need them you really do need them!
June 7, 2025 at 4:01 PM
Got reminded of time travel debugging a few days ago and now I can’t stop thinking about it. I need it on macOS!
June 7, 2025 at 12:06 AM
Just published a basic landing page for SwiftCrossUI!

swiftcrossui.dev

I've tested it with mobile, laptop and ultrawide screen sizes. But if you use your phone's browser in landscape then that's on you 😅
June 3, 2025 at 3:26 AM
SwiftCrossUI's Music Player example app is starting to take form!

When I finally got around to testing today's improvements against Linux and Windows, almost* all of them just worked! And they adapted to look native on each platform 😉

*ignoring a GtkBackend layout bug I had to address 🥲
June 2, 2025 at 4:38 PM
Just messing around with Swift on Android a bit 👀 I created this basic layout from Swift via JNI as a quick test of some ideas I have for bringing SwiftCrossUI to Android
May 27, 2025 at 4:06 PM
Made a prototype of a Swift formal verification system a little while ago and never got around to sharing it!

Here's it finding a 'bug' in my questionable xkcd random implementation 😅
May 23, 2025 at 5:06 AM
I forgot to update the body of the ForEach after removing the duration field from my Song type. But Swift had other ideas...
May 22, 2025 at 7:07 AM
Reposted by stackotter
GitHub Copilot just "fixed" a bug by renaming a variable, and it gave a justification about how it fixed an underlying concurrency issue! 😆
May 21, 2025 at 5:18 PM
Any suggestions for how to add hundreds of images to SwiftCrossUI's DocC documentation without exploding my GitHub repo?

My end goal is to add screenshots of each view/control under each backend so that people can get an idea of how things are expected to adapt across platforms.
May 22, 2025 at 12:42 AM
26 failed CI runs later, SwiftCrossUI's automatically-generated documentation site contains documentation for each backend's platform-specific features (e.g. NSViewRepresentable) in addition to the existing documentation for the core SwiftCrossUI target.
May 21, 2025 at 7:43 AM