| Crates.io | systemprompt-config |
| lib.rs | systemprompt-config |
| version | 0.0.11 |
| created_at | 2026-01-21 18:33:03.356198+00 |
| updated_at | 2026-01-25 21:42:08.861813+00 |
| description | Configuration module for systemprompt.io - environment configuration and validation |
| homepage | https://systemprompt.io |
| repository | https://github.com/systempromptio/systemprompt-core |
| max_upload_size | |
| id | 2059846 |
| size | 127,319 |
Configuration module for systemprompt.io - environment configuration and validation.
Part of the Infra layer in the systemprompt.io architecture.
This crate provides configuration management for the systemprompt.io platform:
${VAR_NAME} and ${VAR_NAME:-default} patterns.env.secrets files into environment.env files for deploymentsrc/
├── lib.rs # Crate root - public API exports
└── services/
├── mod.rs # Module declarations and re-exports
├── manager.rs # ConfigManager - YAML loading, merging, variable resolution
├── schema_validation.rs # Generic YAML/JSON schema validation utilities
├── types.rs # DeployEnvironment, DeploymentConfig, EnvironmentConfig
├── validator.rs # ConfigValidator, ValidationReport
└── writer.rs # ConfigWriter - .env file generation
manager.rsCore configuration management functionality:
ConfigManager::new(project_root) - Initialize with project pathConfigManager::generate_config(environment) - Load and merge YAML configsschema_validation.rsGeneric schema validation utilities:
validate_config<T>() - Validate YAML against typed schemavalidate_yaml_file() - Parse and validate YAML syntaxgenerate_schema<T>() - Generate JSON schema from typesbuild_validate_configs() - Build-time validation for build.rstypes.rsConfiguration type definitions:
DeployEnvironment - Enum: Local, DockerDev, ProductionDeploymentConfig - Raw YAML configuration containerEnvironmentConfig - Resolved environment variablesvalidator.rsConfiguration validation:
ConfigValidator::validate() - Run all validation checksValidationReport - Collect errors and warningswriter.rsConfiguration file output:
ConfigWriter::write_env_file() - Write standard .env fileConfigWriter::write_web_env_file() - Write VITE_* variables for web buildsuse systemprompt_config::{
ConfigManager,
ConfigValidator,
DeployEnvironment,
EnvironmentConfig,
ValidationReport,
validate_config,
validate_yaml_file,
};
| Crate | Purpose |
|---|---|
systemprompt-logging |
CLI output via CliService |
serde_yaml |
YAML parsing |
schemars |
JSON schema generation |
regex |
Variable resolution patterns |
anyhow |
Error handling |
thiserror |
Typed errors for schema validation |
tracing |
Warning logs for unsupported features |
Add to your Cargo.toml:
[dependencies]
systemprompt-config = "0.0.1"
FSL-1.1-ALv2 - See LICENSE for details.