# A UI architecture

**URL:** https://discourse.julialang.org/t/a-ui-architecture/135769
**Category:** Package Announcements
**Tags:** graphics, ui, gui
**Created:** [February 21, 2026, 11:40pm UTC](https://discourse.julialang.org/t/a-ui-architecture/135769 "2026-02-21T23:40:48Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![jkroso](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jkroso/32/220909_2.png) [@jkroso](https://discourse.julialang.org/u/jkroso)
#### Post date: [February 21, 2026, 11:40pm UTC](https://discourse.julialang.org/t/a-ui-architecture/135769/1 "2026-02-21T23:40:48Z")

</div>

There have been a couple of Clay\_C inspired packages recently. This is to some degree is another one but really it’s an architecture for UI libraries that enables relatively readable and reusable code. It breaks down the problem of describing a UI into a pipeline from data/semantics to pixels while making it easy to map user events back up from pixels to semantics.

There is a package with lots of [examples](https://github.com/jkroso/UI.jl/blob/main/examples/07_checkbox.jl). Some serve as tests so aren’t very readable. I recommend example 6 and up since they represent the kind of code you would actually write when implementing your own app/component.

To run the examples you first need to install [my package manager](https://github.com/jkroso/Kip.jl) and add `using Kip` to your startup.jl file, which is a pain I know. I’m sharing this more as an idea rather than as something you would use directly.

Let me know where my explanation in the Readme falls short. I’ve been thinking about UI architecture for about 10 years now without talking to many people about it so it’s hard for me to know where to begin to explain it. It might be very easy to understand or it might be very hard. I have no idea.
