rust-constructor 2.8.0

A cross-platform GUI framework built on egui, the simplest way to develop GUI projects in Rust.
Documentation

Rust Constructor V2

A cross-platform GUI framework built on egui, the simplest way to develop GUI projects with Rust

Author: ChepleBob Language: Rust License: MIT Version

English | 简体中文


Rust Constructor is an open-source project, but it has no direct relationship with the egui development team!

Table of Contents


Version Update Information

  • Current latest version is v2.8.0 Three Core Principles.
    • This update introduces improvements centered around three key aspects: "Multiple Dimensions", "Fast Execution", and "Ease of Use".
      • Modified modify_tags definition in RustConstructorResource to support optional clearing of existing tags;
      • Extracted position and size from position_size_config, added new methods display_position and display_size in BasicFrontResource;
      • Removed event system and all associated components;
      • Reintegrated Rust Constructor Extra into Rust Constructor (i.e., added three new resources Background, Switch, ResourcePanel with their corresponding methods);
      • Split color property into separate color and alpha fields;
      • Removed truncate from Text, now enforces text truncation with auto_fit parameter controlling render layer sizing behavior (whether size reflects actual text dimensions or bounding box dimensions);
      • Enhanced ResourcePanel layout system - layout strategy can now be defined internally within ResourcePanel;
      • Implemented scrollbars for ResourcePanel;
      • Fixed layout corruption issues in ResourcePanel;
      • Resolved several known bugs.

Introduction

  • Rust Constructor is a Rust graphical development library built on egui, including commonly used functions such as timers, resource storage, and error handling.
  • Rust Constructor released its first version in 2025.2, and today's Rust Constructor has undergone earth-shaking changes compared to that time.

Quick Start

  • To introduce Rust Constructor, please add rust_constructor = "x.y.z" (please replace xyz according to your needs) to toml.
  • If you want to start App and perform some simple operations, it is recommended to refer to the official documentation of egui.
  • You can refer to the official tutorial of Rust Constructor Rust Constructor Guide.

Purpose of Creating Rust Constructor

We encountered some problems that egui could not solve during the development of Targeted Vector, so we expanded many tools. In order to allow more people to develop conveniently, we created Rust Constructor.


FAQ

  • Q1: Which platforms does Rust Constructor support?

  • A1: macOS and Windows have been confirmed to be fully supported, and other platforms depend on egui support.

  • Q2: What is the difference between Rust Constructor V2 and V1?

  • A2: The original architecture was modified to conform to the structure of the library crate, published on crates.io, and added an official guide.

  • Q3: Why do I get an error when calling a resource?

  • A3: Please ensure that you have added the resource through the add method and there are no spelling errors.

  • Q4: How to modify resources?

  • A4: Take out the resource through get_resource_mut.

  • Q5: What should I do if I encounter unknown error prompts?

  • A5: Prioritize checking the RustConstructorError definition in the Rust Constructor source code, find the problem you triggered and correct it.

  • Q6: Why is there only V2 of Rust Constructor on crates.io?

  • A6: Rust Constructor V0 and Rust Constructor V1 are essentially bloated projects with many redundant functions and meaningless code, so they were not released.


License

MIT © 2025 ChepleBob

Epilogue

If you like this project, please give me a star on GitHub. You can also join our organization Binder.