Repository Analysis

emilk/egui

egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native

5.8 Low AI signal View on GitHub
5.8
Adjusted Score
5.8
Raw Score
100%
Time Factor
2026-05-27
Last Push
29,221
Stars
Rust
Language
128,235
Lines of Code
507
Files
697
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 30LOW 667

Pattern Findings

697 matches across 9 categories. Click a row to expand file-level details.

Over-Commented Block651 hits · 617 pts
SeverityFileLineSnippet
LOWlychee.toml1################################################################################
LOWdeny.toml1# Copied from https://github.com/rerun-io/rerun_template
LOWclippy.toml21
LOWcrates/eframe/Cargo.toml41# Allow crates to choose an android-activity backend via Winit
LOWcrates/eframe/Cargo.toml81## Enable [`wgpu`](https://docs.rs/wgpu) for painting (via [`egui-wgpu`](https://github.com/emilk/egui/tree/main/crates/
LOWcrates/eframe/src/lib.rs1//! eframe - the [`egui`] framework crate
LOWcrates/eframe/src/lib.rs21//! If your app is only for native, and you don't need advanced features like state persistence,
LOWcrates/eframe/src/lib.rs41//! // for e.g. egui::PaintCallback.
LOWcrates/eframe/src/lib.rs61//! # #[cfg(target_arch = "wasm32")]
LOWcrates/eframe/src/lib.rs81//! }
LOWcrates/eframe/src/lib.rs101//! }
LOWcrates/eframe/src/lib.rs121//!
LOWcrates/eframe/src/lib.rs201#[cfg(any(feature = "glow", feature = "wgpu_no_default_features"))]
LOWcrates/eframe/src/lib.rs221/// [Desktop Entry Spec](https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#deskto
LOWcrates/eframe/src/lib.rs241/// Self::default()
LOWcrates/eframe/src/lib.rs301///
LOWcrates/eframe/src/lib.rs321/// eventloop.run_app(&mut winit_app)?;
LOWcrates/eframe/src/lib.rs421/// // Our application state:
LOWcrates/eframe/src/icon_data.rs1//! Helpers for loading [`egui::IconData`].
LOWcrates/eframe/src/epi.rs21#[cfg(not(target_arch = "wasm32"))]
LOWcrates/eframe/src/epi.rs61 pub integration_info: IntegrationInfo,
LOWcrates/eframe/src/epi.rs81 ///
LOWcrates/eframe/src/epi.rs141 ///
LOWcrates/eframe/src/epi.rs161 fn logic(&mut self, ctx: &egui::Context, frame: &mut Frame) {
LOWcrates/eframe/src/epi.rs181 ///
LOWcrates/eframe/src/epi.rs201 ///
LOWcrates/eframe/src/epi.rs221 #[cfg(not(feature = "glow"))]
LOWcrates/eframe/src/epi.rs241 /// You can use [`egui::Color32::to_normalized_gamma_f32`] for this.
LOWcrates/eframe/src/epi.rs261 /// It can be used to prevent specific keyboard shortcuts or mouse events from being processed by egui.
LOWcrates/eframe/src/epi.rs281///
LOWcrates/eframe/src/epi.rs301 /// Must be a power-of-two. Higher = more smooth 3D.
LOWcrates/eframe/src/epi.rs321 #[cfg(any(feature = "glow", feature = "wgpu_no_default_features"))]
LOWcrates/eframe/src/epi.rs341 /// event loop before it is run.
LOWcrates/eframe/src/epi.rs381 /// Dithering assumes an sRGB output and thus will apply noise to any input value that lies between
LOWcrates/eframe/src/epi.rs481 /// Unused by webgl context as of writing.
LOWcrates/eframe/src/epi.rs501 /// two 8bit values after applying the sRGB OETF function, i.e. if it's not a whole 8bit value in "gamma space".
LOWcrates/eframe/src/epi.rs761 self.window.as_ref()
LOWcrates/eframe/src/epi.rs781 /// Register your own [`glow::Texture`],
LOWcrates/eframe/src/epi.rs841 /// The full URL (`location.href`) without the hash, percent-decoded.
LOWcrates/eframe/src/epi.rs861 /// `location.port`
LOWcrates/eframe/src/epi.rs881 /// "foo=hello&bar%20&foo=world" is parsed as `{"bar ": [""], "foo": ["hello", "world"]}`
LOWcrates/eframe/src/native/app_icon.rs41 /// We did not set it or failed to do it. In any case we won't try again.
LOWcrates/eframe/src/native/winit_integration.rs121 /// be used in special situations if the window must be repainted while
LOWcrates/eframe/src/native/winit_integration.rs141 /// # Warning
LOWcrates/eframe/src/native/macos.rs1use egui::Vec2;
LOWcrates/eframe/src/native/wgpu_integration.rs841 // On MacOS the asap repaint is not enough. The drawn frames must be synchronized with
LOWcrates/eframe/src/native/glow_integration.rs801 // If this is not done, the compositor will assume that the window does not want to redraw,
LOWcrates/eframe/src/web/web_painter.rs1use egui::{Event, UserData};
LOWcrates/eframe/src/web/web_logger.rs81
LOWcrates/eframe/src/web/web_logger.rs101
LOWcrates/egui_glow/src/painter.rs101 /// Stores outdated OpenGL textures that are yet to be deleted
LOWcrates/egui_glow/src/painter.rs121impl CallbackFn {
LOWcrates/egui_glow/src/painter.rs281 self.max_texture_side
LOWcrates/egui_glow/src/painter.rs381 /// The following OpenGL features will be set:
LOWcrates/egui_glow/src/lib.rs21
LOWcrates/egui_glow/src/lib.rs101#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
LOWcrates/egui-winit/src/lib.rs1//! [`egui`] bindings for [`winit`](https://github.com/rust-windowing/winit).
LOWcrates/egui-winit/src/lib.rs61pub struct EventResponse {
LOWcrates/egui-winit/src/lib.rs101 /// If `true`, mouse inputs will be treated as touches.
LOWcrates/egui-winit/src/lib.rs581 // emitted. [^1]
591 more matches not shown…
Decorative Section Separators24 hits · 87 pts
SeverityFileLineSnippet
MEDIUMclippy.toml3# -----------------------------------------------------------------------------
MEDIUMclippy.toml22# -----------------------------------------------------------------------------
MEDIUMclippy.toml60# -----------------------------------------------------------------------------
MEDIUMcrates/eframe/Cargo.toml138# -------------------------------------------
MEDIUMcrates/eframe/Cargo.toml194# -------------------------------------------
MEDIUMcrates/emath/src/rect_align.rs10/// ┌───────────┐ ┌────────┐ ┌─────────┐
MEDIUMcrates/emath/src/rect_align.rs12/// └───────────┘ └────────┘ └─────────┘
MEDIUMcrates/emath/src/rect_align.rs13/// ┌──────────┐ ┌────────────────────────────────────┐ ┌───────────┐
MEDIUMcrates/emath/src/rect_align.rs15/// └──────────┘ │ │ └───────────┘
MEDIUMcrates/emath/src/rect_align.rs16/// ┌──────────┐ │ │ ┌───────────┐
MEDIUMcrates/emath/src/rect_align.rs18/// └──────────┘ │ │ └───────────┘
MEDIUMcrates/emath/src/rect_align.rs19/// ┌──────────┐ │ │ ┌───────────┐
MEDIUMcrates/emath/src/rect_align.rs21/// └──────────┘ └────────────────────────────────────┘ └───────────┘
MEDIUMcrates/emath/src/rect_align.rs22/// ┌────────────┐ ┌──────┐ ┌──────────┐
MEDIUMcrates/emath/src/rect_align.rs24/// └────────────┘ └──────┘ └──────────┘
MEDIUMscripts/check.sh81# ------------------------------------------------------------
MEDIUMscripts/clippy_wasm/clippy.toml6# -----------------------------------------------------------------------------
MEDIUMscripts/clippy_wasm/clippy.toml25# -----------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml67 # ---------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml124 # ---------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml156 # ---------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml178 # ---------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml199 # ---------------------------------------------------------------------------
MEDIUM.github/workflows/rust.yml218 # ---------------------------------------------------------------------------
AI Slop Vocabulary4 hits · 11 pts
SeverityFileLineSnippet
MEDIUMcrates/eframe/src/native/glow_integration.rs1001 // Create GL display. This may probably create a window too on most platforms. Definitely on `MS windows`. Never
MEDIUMcrates/egui_kittest/src/lib.rs709 /// See also: <https://doc.rust-lang.org/cargo/reference/cargo-targets.html#the-harness-field>
MEDIUMcrates/egui_kittest/src/lib.rs743 See: https://doc.rust-lang.org/cargo/reference/cargo-targets.html#the-harness-field"
MEDIUMcrates/egui_kittest/src/snapshot.rs755/// # let harness = MockHarness;
Fake / Example Data8 hits · 10 pts
SeverityFileLineSnippet
LOWcrates/egui_demo_lib/src/lib.rs59pub const LOREM_IPSUM: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
LOWcrates/egui_demo_lib/src/lib.rs59pub const LOREM_IPSUM: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
LOWcrates/egui_demo_lib/src/lib.rs61pub const LOREM_IPSUM_LONG: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incid
LOWcrates/egui_demo_lib/src/lib.rs61pub const LOREM_IPSUM_LONG: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incid
LOWcrates/egui_demo_lib/src/demo/text_layout.rs132 ui.selectable_value(lorem_ipsum, true, "Lorem Ipsum");
LOWcrates/egui_demo_lib/src/demo/modals.rs21 name: "John Doe".to_owned(),
LOWexamples/custom_font_style/src/main.rs73pub const LOREM_IPSUM: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
LOWexamples/custom_font_style/src/main.rs73pub const LOREM_IPSUM: &str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
Slop Phrases3 hits · 8 pts
SeverityFileLineSnippet
MEDIUMscripts/accept_snapshots.sh3# Its main use is in the update_kittest_snapshots CI job, but you can also use it locally.
MEDIUMscripts/build_demo_web.sh99# if this fails with "error: cannot import from modules (`env`) with `--no-modules`", you can use:
LOW.vscode/settings.json24 // Don't forget to put it in a comment again before committing.
Deep Nesting3 hits · 3 pts
SeverityFileLineSnippet
LOWscripts/generate_changelog.py136
LOWscripts/generate_changelog.py244
LOWscripts/lint.py153
Redundant / Tautological Comments2 hits · 3 pts
SeverityFileLineSnippet
LOW.github/workflows/enforce_branch_name.yml20 # Check if PR is from a fork
LOW.github/workflows/enforce_branch_name.yml22 # Check if PR is from the master/main branch of a fork
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippet
LOWcrates/egui_kittest/src/snapshot.rs44/// Example usage:
Hyper-Verbose Identifiers1 hit · 1 pts
SeverityFileLineSnippet
LOWscripts/generate_changelog.py49def fetch_pr_info_from_commit_info(commit_info: CommitInfo) -> Optional[PrInfo]: