fluid 0.8.0

Flexible, declarative library for graphical user interfaces (GUI, UI)


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

Hello World from Fluid!

Fluid

A flexible, pluggable UI library for the D programming language. Minimal setup. Declarative. Non-intrusive.

auto root = vspace(
    .layout!"center",
    label(
        .layout!"center",
        "Hello World from"
    ),
    imageView("./logo.png"),
);

Fluid comes with Raylib 5 support. Integration is seamless: one or two calls do the job.

while (!WindowShouldClose) {
    BeginDrawing();
        ClearBackground(color!"#fff");
        root.draw();
    EndDrawing();
}

Fluid is largely feature-complete and has successfully been used to produce complete programs like Samerion Studio. It is still receiving incremental improvements to make it easier to use, more accessible, and more performant.

While in pre-release stage, breaking changes are reserved to v0.x version bumps and new features.

Support Fluid development on Patreon: https://www.patreon.com/samerion

  • Straightforward, high-level API
  • Responsive by design
  • Massively extensible: add your own nodes, I/O systems, and backends
  • Components form building blocks
  • Reliable mouse and keyboard input
  • Separate layout and styling
  • Out-of-the-box Unicode support
  • Code editor node included
  • Full HiDPI support
  • Partial gamepad support

Get Fluid

For a quick start guide on Fluid, check out the tour:

dub run fluid:tour

Create a new dub project based on Fluid:

dub init -t fluid

You can use dub to include Fluid in your code:

dub add fluid
dub add raylib-d
dub run raylib-d:install

Contribute to Fluid

Fluid welcomes contributions! You can review open issues and open pull requests to fix them. If you need help, you'll receive it.

Read more about contributing to Fluid in our contributing.md file.

Authors:
  • Artha
Sub packages:
fluid:tour, fluid:init-exec, fluid:module-view
Dependencies:
raylib-d, bindbc-freetype, event-pipe, elemi, bindbc-loader, arsd-official:image_files, optional
Versions:
0.8.0 2025-Dec-21
0.8.0-rc.2 2025-Dec-21
0.8.0-rc.1 2025-Dec-21
0.7.7 2025-Dec-04
0.7.6 2025-Nov-29
Show all 20 versions
Download Stats:
  • 7 downloads today

  • 29 downloads this week

  • 86 downloads this month

  • 669 downloads total

Score:
2.3
Short URL:
fluid.dub.pm