Products/Zenthra/Zenthra View
Example App · v1.0 Stable

Zenthra View

A blazing fast native desktop image viewer built with the Zenthra UI framework. Smoothly browse directories, view details, run slideshows, and slide through virtualized filmstrips.

< 4ms
Render latency
1.5 MB
Binary size
100K+
Virtual items
Zenthra View Screenshot

Core Application Strengths

Virtualized Filmstrip

Fully virtualized scrolling that manages lists of 100,000+ files with zero layout lags. Memory is garbage collected dynamically, only keeping on-screen thumbnails cached.

Immediate-Mode Layout

Leverages Taffy layout engine and Cosmic Text libraries. Recalculates canvas bounding boxes on window resize in less than 1ms.

GPU Texture Blitting

Uploads image textures directly to GPU buffers via WGPU pipeline. Zooming, panning, and rotations are computed in vertex shaders, maintaining locked 60 FPS redraws.

Pure Immediate-Mode Logic

Zenthra View demonstrates the power of Zenthra's builder pattern. A single unified event closure controls UI structure, state updates, and rendering triggers.

By avoiding complex widget lifecycle frameworks, the application retains a light memory footprint and launches instantaneously.

image_viewer/src/main.rs
use zenthra::prelude::*;
fn main() {
App::new()
.title("Zenthra — Image Viewer").size(1200, 660).decorations(false).with_ui(move |ui| {
ui.container()
.fill()
.bg(colors.bg_base)
.show(|ui| {
draw_title_bar(ui, &mut state);
draw_viewer(ui, &mut state);
});
})
.run();
}

Application Interface & Deep Dive

Explore various workspaces and toolbars within Zenthra View, built with real-time immediate rendering layout modules.

Seamless startup landing state

Seamless Application Launch

Zenthra View initializes its window, renderer, and directory trees in under 4ms. The lightweight startup state features a clean canvas with direct open hooks for local files and folder structures.

  • Instantaneous launch sequence (< 4ms)
  • Minimalist, distraction-free landing workspace
Workspace dark visualization layout

High-Performance Render Canvas

The active workspace operates directly on OpenGL hardware-accelerated drawing contexts. This enables instant zooming, viewport panning, and multi-threaded image decoding without locking the main thread.

  • GPU-based anti-aliasing and interpolation
  • Sub-millisecond input response latency
Directory list view screenshot

Interactive Layout Controls

Navigate through thousands of files seamlessly using side navigation panels. Includes filters for file formats, sorting systems, and a quick-action toolbar for rotation, fit-to-screen, and color profile inspects.

  • Split sidebar with tree directory browser
  • Real-time file system watchers (hot reloading)
Image details and metadata screen

Advanced Metadata & Library Inspection

Inspect comprehensive file statistics, dimensions, and color spaces directly from the sidebar interface. Double-click thumbnails to trigger virtualized filmstrip updates without reloading application state.

  • Real-time dimension and memory tracker
  • Non-blocking background image metadata parser

Build native apps like this.

Zenthra View is open source. Study its implementation pattern on GitHub.