emilk / emilk/egui

The struggle is real! What should be a five-minute demo build turns into a pure nightmare! How Rust's ecosystem turns developer into an archaeologist

Open
#7,147 5 comments 4 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
30.6k
Forks
2.1k
Avg merge
1d 9h
Merged PRs (30d)
72

Description

The potential of egui is real: it's fast, portable, and simple **_only_** once understood, but the lack of **high-level guidance**, **visual examples**, layout debugging tools, or even a **central pattern guide** makes it feel like I am doing archaeology instead of development.

The documentation and developer experience around egui (and to a large extent Rust GUI tooling in general) is pretty rough, compared to the polished ecosystems like React, Next.js, Svelte, or Chakra UI,

On top of that, egui is immediate mode, which is quite different from the retained-mode model that web UI devs are used to. That divergence in paradigm is rarely explained thoroughly in the official docs, leading to a lot of trial-and-error for anyone coming from a more declarative mindset (like React).

What should be a five-minute layout tweak turns into a rabbit hole of deciphering `allocate_ui_at_rect`, layout strategies, and frame lifecycles.

With egui, you’re left with sparse docs, outdated examples, and the need to read internal implementation to figure things out. It’s not beginner-friendly, and it’s certainly not efficient when you're trying to ship something. In contrast, Next.js or Chakra UI you find an onboarding process as painless as possible — with guides, tutorials, playgrounds, videos, and a whole feedback loop driving documentation quality.

Finally, I am feeling frustrated and overloaded

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the official documentation and examples around allocate_ui_at_rect, layout strategies, and frame lifecycles. The issue does not name files, tests, or a bounded documentation change, so the scope and completion criteria need to be narrowed before implementation can begin.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
developer-experience, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.