Clay – UI Layout Library

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
InfluxDB high-performance time series database
Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
influxdata.com
featured
  1. cssgrid

    Pure Nim CSS Grid layout engine

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. taffy

    A high performance rust-powered UI layout library

    Cool! I also have a standalone implementation of CSS Grid [1]. Implemented in Rust in my case (and we also support Flexbox and Block layout). Looks like the licenses are both MIT (although you may want to add a LICENSE file to make that easier to find) so feel free to steal bits if you want. We aim to be fully web compatible, although we're not quite there yet.

    One thing we have that you may be particularly interested is a reasonably substantial test suite. The tests are defined as HTML snippets that we run through Chrome using webdriver in order the scrape (hopefully) correct assertions, and then format into pure-code unit tests. If you wanted to you could write your own test generator and reuse our snippets. (this test infrastructure is also partially shared with Yoga [2], the C++ Flexbox implementation that powers React Native)

    1: https://github.com/DioxusLabs/taffy

    2: https://github.com/facebook/yoga

  4. yoga

    Yoga is an embeddable layout engine targeting web standards.

    Cool! I also have a standalone implementation of CSS Grid [1]. Implemented in Rust in my case (and we also support Flexbox and Block layout). Looks like the licenses are both MIT (although you may want to add a LICENSE file to make that easier to find) so feel free to steal bits if you want. We aim to be fully web compatible, although we're not quite there yet.

    One thing we have that you may be particularly interested is a reasonably substantial test suite. The tests are defined as HTML snippets that we run through Chrome using webdriver in order the scrape (hopefully) correct assertions, and then format into pure-code unit tests. If you wanted to you could write your own test generator and reuse our snippets. (this test infrastructure is also partially shared with Yoga [2], the C++ Flexbox implementation that powers React Native)

    1: https://github.com/DioxusLabs/taffy

    2: https://github.com/facebook/yoga

  5. clay

    High performance UI layout library in C.

    It's in the repo; landing pages are usually for generating interest.

    https://github.com/nicbarker/clay

  6. It won’t help with dark mode, but the canvas-place-element proposal (https://github.com/WICG/canvas-place-element) should allow those interactions on canvas-rendered text backed by a text element placed under the canvas.

  7. tracy

    Frame profiler

    > First, this isn't really true. You might typically have a window, a container, a layout object and then your gui components.

    Any non-trivial UI will include many complicated workflows and layouts. "GUI components" themselves will often be combinations of other, more primitive, GUI components.

    > Second you don't need nested calls, you just add one component to another.

    You're just describing currying here (function application or nesting hierarchies are the same thing), and both are equally annoying when building interfaces.

    > Why would that be true?

    Because you will want certain things to be reusable, it's a pretty common pattern.

    > This is a bizarre way to make a GUI let alone thinking it's necessary. Where is this idea coming from?

    It's a pretty common pattern for building GUIs. Take a look at tracy[1], built using ImGUI. All the different components are split up in their own file, I'm not sure what the alternative would be, like a 100,000-line "master UI" file? Seems like a much worse idea. Looking at the tracy code, it's very well-written, but also super weird to follow. For example, color defaults seem to be located in header files[2]. I mean, yuck.

    [1] https://github.com/wolfpld/tracy/tree/master/profiler/src/pr...

    [2] https://github.com/wolfpld/tracy/blob/master/profiler/src/pr...

  8. brisk

    Cross-platform C++20 GUI framework featuring MVVM architecture, reactive capabilities, and scalable, accelerated GPU rendering.

    I'm very fond of QML's syntax, so can't quite understand why you don't like it. It has a learning curve, but I studied all the basics in a day (it's just so simple and intuitive, imo).

    Not sure how "QML in C++" would look like, but it doesn't sound pretty. Recently someone published a declarative UI inside C++[1] (without a different syntax) but I felt a bit off with this approach. Maybe that's something you mean?

    [1] https://github.com/brisklib/brisk

    [2] https://news.ycombinator.com/item?id=42450963

  9. InfluxDB

    InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Clay 0.13: added support for multiple independent Clay instances

    1 project | news.ycombinator.com | 19 Feb 2025
  • Clay (short for C Layout) is a high performance 2D UI layout library

    4 projects | news.ycombinator.com | 24 Aug 2024
  • Show HN: Hyperdiv – Reactive, immediate-mode web UI framework for Python

    9 projects | news.ycombinator.com | 20 Feb 2024
  • FixFlex alternatives - Stevia and SnapKit

    3 projects | 12 Jan 2024
  • Building Reddit’s Design System on iOS

    5 projects | /r/RedditEng | 27 Sep 2023

Did you know that C++ is
the 7th most popular programming language
based on number of references?