19 releases

new 0.1.21 Jan 6, 2025
0.1.20 Jan 4, 2025
0.1.17 Dec 31, 2024

#878 in Debugging

Download history 284/week @ 2024-12-16 1319/week @ 2024-12-23 325/week @ 2024-12-30

1,928 downloads per month
Used in ferrite

GPL-3.0-or-later

215KB
3K SLoC

ferrite-core

Core functionality for the Ferrite image viewer. This crate provides the essential building blocks for image viewing, manipulation, and navigation.

Features

  • Fast image loading with LRU caching
  • Smooth zooming and panning
  • Directory-based image navigation
  • Configurable UI elements

Architecture

The crate is organized into several modules:

  • image/ - Image loading, caching, and management
  • ui/ - User interface components and rendering
  • navigation/ - Directory traversal and image navigation

Usage

use ferrite_core::FeriteApp;
use ferrite_config::FeriteConfig;

fn main() {
    let config = FeriteConfig::default();
    let app = FeriteApp::new(
        &eframe::CreationContext::default(),
        Some("path/to/image.jpg".into()),
        config,
    );
}

Dependencies

  • eframe, egui - GUI framework
  • image - Image processing
  • lru - Cache management
  • tracing - Logging and diagnostics
  • ferrite-config - Configuration management

License

Same as Ferrite main project

Dependencies

~23–62MB
~1M SLoC