17 stable releases (5 major)

5.1.3 Jan 6, 2026
5.0.2 Dec 21, 2025
4.0.0 Dec 12, 2025
3.4.1 Dec 11, 2025
0.2.1 Oct 9, 2025

#6 in #ggen

Download history 11/week @ 2025-11-06 17/week @ 2025-11-13 16/week @ 2025-11-27 14/week @ 2025-12-04 8/week @ 2025-12-11 5/week @ 2025-12-18 8/week @ 2026-01-01 2/week @ 2026-01-08 8/week @ 2026-01-15 23/week @ 2026-01-22 18/week @ 2026-01-29 2/week @ 2026-02-05 2/week @ 2026-02-12 29/week @ 2026-02-19

57 downloads per month
Used in 12 crates (9 directly)

MIT license

220KB
4.5K SLoC

ggen-utils - Shared utilities for ggen project

This crate provides common utilities used across the ggen codebase, including:

  • Error handling types and utilities
  • Application configuration management
  • Logging infrastructure
  • Alert system for critical notifications
  • Project configuration types
  • Time utilities
  • Type definitions and helpers
  • User level management

Examples

Error Handling

use ggen_utils::error::Result;
use ggen_utils::error::Error;

fn process_data() -> Result<()> {
    // Operations that may fail
    Ok(())
}

process_data()?;

Configuration

use ggen_utils::app_config::AppConfig;

let config = AppConfig::load()?;
println!("Config loaded: {:?}", config);

ggen-utils

Shared utilities for the ggen project, including configuration management, error handling, logging, and common types.

Features

  • Configuration management with file, environment, and CLI argument support
  • Structured error handling with context and source error chaining
  • Logging setup with multiple output formats (terminal, syslog, journald)
  • Common types and utilities for the ggen ecosystem

Usage

This crate is primarily used internally by other ggen crates. See the main ggen documentation for usage examples.

Dependencies

~32MB
~611K SLoC