Crate ggen_config

Crate ggen_config 

Source
Expand description

§ggen-config

Configuration parser and validator for ggen.toml files.

This crate provides a type-safe interface for loading, parsing, and validating ggen.toml configuration files that define project settings, AI providers, templates, RDF/SPARQL settings, and more.

§Features

  • Type-safe parsing: Strongly-typed Rust structs with serde
  • Schema validation: Validates configuration against expected schema
  • Environment overrides: Support for environment-specific configs
  • Workspace support: Mono-repo and workspace configuration
  • Error handling: Comprehensive error types with context

§Example

use ggen_config::{GgenConfig, ConfigLoader};

// Load configuration from file
let config = ConfigLoader::from_file("ggen.toml")?;

// Access configuration
println!("Project: {}", config.project.name);
if let Some(ai) = &config.ai {
    println!("AI Provider: {}", ai.provider);
}

Modules§

prelude
Re-export commonly used types

Structs§

AiConfig
AI provider configuration
AiPrompts
AI prompt configuration
AiValidation
AI validation configuration
BuildConfig
Build configuration
CodeownersConfig
CODEOWNERS generation configuration
ConfigLoader
Configuration loader and parser
ConfigValidator
Configuration validator
DiataxisConfig
Diataxis documentation configuration
DiataxisNavItem
Navigation entry within a quadrant
DiataxisQuadrants
Quadrant configuration (tutorials, how-to, reference, explanations)
DiataxisSection
Per-quadrant configuration
FmeaControl
FMEA control entry (used in package.toml [fmea] section)
GenerationSafetyConfig
Generation configuration with path protection
GgenConfig
Root configuration structure for ggen.toml
LifecycleConfig
Lifecycle configuration
LoggingConfig
Logging configuration
MarketplaceConfig
Marketplace configuration
PackageFmeaSection
Package FMEA section (used in package.toml)
PackageMetadata
Package metadata (for marketplace packages)
PerformanceConfig
Performance configuration
PokaYokeSettings
Poka-yoke (error-proofing) settings
ProjectConfig
Project metadata configuration
RdfConfig
RDF configuration
SecurityConfig
Security configuration
SparqlConfig
SPARQL configuration
TemplatesConfig
Templates configuration
TestConfig
Test configuration

Enums§

ConfigError
Errors that can occur during configuration operations

Type Aliases§

Result
Result type alias for configuration operations