d0175edb7b0d087ad58a5249ee2e654ed3027693
Scrubber shows what has loaded, what has played and its chapters, names the time under the pointer, seeks by press and gpui's drag, and steps by the slider's keys; over_media lights it for a dark layer. VideoPlayer shows the host's frame in its shape with a caption and a control bar over it: the scrubber, play, the time, speed, captions, picture in picture and full screen, each only with its handler; the bar rests after a still pointer while it plays, on one wake from the executor's timer. Keys: Space and K, J and L, the arrows, C and F. VideoThumbnailStrip lays frames along the length under a playhead with a trim whose handles drag and whose ends I and O set. SubtitleEditor edits cues in place: times as mm:ss.mmm, kept in order, a time that does not read kept out with the reason shown. InlineEdit is a Tab stop with the ring; it hands focus back after Enter or Escape and keeps its text on Enter's release. overlays::media_button is shared by the lightbox and the player's bar. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Ely GPUI Component
A component library for GPUI, the Rust UI framework behind Zed. Every component ships in light and dark. The palette is warm and quiet. Color carries meaning, not decoration.
Status: early. TASKS.md tracks every component, chapter by chapter.
Use
[dependencies]
ely-gpui-component = { git = "https://github.com/ZacharyZhang-NY/Ely-GPUI-Components" }
gpui = "0.2.2"
use ely_gpui_component::{Assets, theme::{Mode, Theme}};
use gpui::{App, Application};
fn main() {
Application::new().with_assets(Assets).run(|cx: &mut App| {
ely_gpui_component::init(cx);
Theme::set_mode(Mode::Dark, cx);
});
}
init registers the fonts and the theme. It panics if Assets is not wired into the application.
Gallery
cargo run --example gallery
cargo run --example gallery -- --page buttons
cargo run --example gallery -- --capture shots # macOS: PNG of every page, light and dark
Build notes
- gpui 0.2.2 compiles its Metal shaders at runtime here (
runtime_shaders, on by default), so a full Xcode install is not required. - Tested on macOS only. The capture tool needs macOS.
License
MIT or Apache-2.0, at your option. Lucide icons: ISC. Inter and JetBrains Mono: SIL Open Font License 1.1.
The gallery photos in examples/gallery/assets were generated for this project with gpt-image-2.
Description
No description provided
https://elygpui.com
13 MiB
1 Stars
1 Watchers
0 Forks
Languages
Rust
98.1%
TypeScript
1.2%
CSS
0.3%
Python
0.2%