top | item 41230394

(no title)

zackbrown | 1 year ago

I won't claim Pax is better than any of these, but that we seek to solve different goals.

Unlike Flash: driven by a markup language, fully open source, no plugin required, solves a11y, compiles to native apps incl. mobile

Unlike Silverlight: fully open source, no plugin required, no heavy VM

Unlike JavaFX: no plugin required, no heavy VM, visual builder is a vector design tool

Unlike Flutter: designed for web (small footprint, a11y out of the box); first-party and foundationally integrated visual builder, visual builder is a vector design tool

discuss

order

niutech|1 year ago

Thanks for explanations. However, instead of making yet another framework, wouldn't it be better to contribute to Flutter (e.g. optimize its wasm target, add a vector visual builder), so there is one strong open cross-platform alternative to HTML/CSS/JS?

zackbrown|1 year ago

Pax's primary goal is "designability" — to enable a vector design tool to read & write the same content & behavior you may write by hand. (.pax files)

Our solution requires language constraints — a hermetic separation of concerns between the declarative description language (.pax) and a Turing-complete programming language (starting with Rust.)

These language constraints and rendering requirements[0] are so core to our solution that building anywhere other than the systems level was not tenable.

[0] Specifically, the runtime must render in "design tool coordinates," to enable a vector design tool authoring UX. This authoring experience must also be extremely fast, like Figma's. The rendering engine must be designed around this requirement and neither HTML/CSS's or Flutter's were.