morphorm | engine | |
---|---|---|
5 | 3 | |
238 | 2,869 | |
2.1% | 0.0% | |
6.5 | 10.0 | |
about 2 months ago | over 4 years ago | |
Rust | CoffeeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
morphorm
-
Whatβs everyone working on this week (1/2023)?
I started working Rustycan - a small UI framework that focuses on developer ergonomics and uses other frameworks (such as egui/druid/html) for the rendering, except for the layout which I'm planning to use morphorm.
-
taffy 0.1: a fully-documented, actively maintained UI layout library to replace the abandoned stretch crate
That said, I'd be interested in migrating towards something closer to the Hierarchy trait that morphorm has pioneered. If this is something that's interesting and important to you could you make an issue?
-
Bevy and Dioxus are collaborating on stretch2: a revived UI layout algorithm
jkelleyrtp has been experimenting with other UI layout strategies, including SwiftUI. On my end, I really want to see morphorm support (based on subform): initial experiments are promising, and it's "refreshingly simple".
-
Bevy 0.6
There's a few critical subtasks here: - determine the data flow model we'd like to use for our UI. We'd like to integrate tightly into the ECS, but need to figure out how to reduce the boilerplate and improve reliability around working with hierarchies. - swap our layout library. Our current dependency stretch implements the flexbox algorithm, but is unmaintained and has critical bugs :( The three main options here are to fork flex, move to the new morphorm crate, or write a layout library from scratch - consider rearchitecting our UI to be more flexible and compositional: splitting the massive Style component into several parts and moving to a "UI is a collection of behaviors" paradigm - build out more widgets! - more docs and examples!
engine
-
V0: Generative UI
It's not, but I appreciate you sharing this anyway β thank you!
I was referring mostly to GSS: https://gss.github.io/
I think it was an interesting idea that unfortunately didn't really work out. This was before both flex and grid layouts were a thing, so anything new in this space was exciting really. It's a much better css layout world today than it was 8-10 years ago, and particularly grid layout is a very welcome change, but I can't help but think some great ideas have been left by the wayside. Maybe for good reasons, but still.
-
State of CSS
I'd love to see something like constraint layouts in pure CSS. It's an incredibly powerful tool when building user interfaces.
I was really excited to see GSS (http://gss.github.io), however at the time it was far too slow to be usable in real projects.
-
taffy 0.1: a fully-documented, actively maintained UI layout library to replace the abandoned stretch crate
It's been a while since I messed with it. IIRC, the way it satisfies the constraints tends to support some really complex adaptive sizing behaviors once you learn to anticipate it. But I never ended up using it seriously, because flex is usually (and possibly always) good enough, and I don't think the web port https://github.com/gss/engine ever saw much adoption. Not completely sure they offered a way of talking about lists of child elements.
What are some alternatives?
rfcs - Suggest changes to Bevy and view accepted designs
openv0 - AI generated UI components
taffy - A high performance rust-powered UI layout library
ppg.report - Weather report tailored for paramotor pilots, available worldwide. π Combines winds aloft, nearby Terminal Aerodrome Forecasts, hourly forecast, NWS active alerts, FAA TFRs, SIGMETs, G-AIRMETs and CWAs
stretch - High performance flexbox implementation written in rust
bevy_ggrs - Bevy plugin for the GGRS P2P rollback networking library.
bevy-kajiya - A plugin to use the kajiya renderer with bevy
sprawl - A high performance Rust-powered layout library [Moved to: https://github.com/DioxusLabs/taffy]
kajiya - π‘ Experimental real-time global illumination renderer π¦
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
matchbox - Painless peer-to-peer WebRTC networking for rust wasm (and native!)