SPACE.LA
◀ music select
personal / framework / archived

Benedict

SwiftUI-style declarative component framework over egui in Rust (crate egui-swiftui): VStack/HStack/flex layouts, sidebar and list components, animation controller and a two-thread design with a tokio async runtime feeding the UI thread.

BPM
133
GRADE
B
LEVEL
4
RELEASES
0
YEARS
2025–2025

SwiftUI Without The Swift

Benedict was a crate called egui-swiftui, built in a day in June 2025. The idea was to take egui, which is fast, immediate-mode and doesn't care how you structure an app, and put SwiftUI's declarative API on top of it.

It got VStack and HStack, a FlexContainer over egui_flex, a Spacer, a navigation sidebar with menu items and a scrollable list view. Underneath there's a Component trait, an AsyncHandler trait, a shared AppState and an AnimationController.

The part I cared about most was the threading. The main thread renders and handles input, a background thread runs a tokio runtime for the I/O and heavy work, and they talk through typed messages.

It was a one-day sketch, one of a bunch I did around then, all trying to get at the same thing: writing native interfaces without writing native code.

led to

  • tish-egui2026SwiftUI-style components over egui