Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • having some screenshots or screen recordings is always nice for... UI libraries
  • There are Python bindings via the stretchable library.

    https://github.com/mortencombat/stretchable

  • My opinion is that no one should re-implement CSS layout orimitives and algorithms. Those are rather unique in how (by necessity and quirks if history) awkward, stange and bolted on they are.

    Explore other layout ideas. E.g. https://stackoverflow.com/questions/53911631/gui-layout-algo...

  • This library can be used to build no_std guis on embedded hardware (microcontrollers with KBs of ram). It is that lightweight and fast.
  • An unfortunate name for certain audiences in the UK!
  • Closely-related tangent: for an amazing resource showing how to leverage CSS from first principles, see https://every-layout.dev
  • I would be interested in something like Apple's constraint layout system. Nested flexboxes and grids can do a lot, but I kinda fell in love after seeing constraint layout. Even how window resizing is represented as a constraint with a certain priority too!
  • I maintain Taffy: AMA.

    I am currently in the process of building a wider browser engine / GUI toolkit on top of it (https://github.com/dioxuslabs/blitz). As part of that I am implementing a lot of the messier parts of CSS layout (floats, etc), and also grinding on fixing all the WPT tests which we track here: https://blitz.is/status/wpt/css/css-flexbox.

    The vision is a complete standalone implementation of the web layout algorithms that can be easily embedded (with individual algorithms enabled/disabled on a pay what you use basis), and which can also be part of a modular ecosystem of browser engine components that make it easier for people to create new browser engines.

    Beyond Blitz, some notable users are:

    - Servo which uses it only for CSS Grid

    - Zed which uses it via it's GPUI toolkit.

Explore Birbla archives