Skip to main content

rust_config_tree/
lib.rs

1#![warn(missing_docs)]
2
3//! Configuration-tree loading and CLI helpers for layered config files.
4//!
5//! The high-level API loads `confique` schemas directly, while the lower-level
6//! tree traversal helpers remain available for custom loaders.
7//!
8//! Use [`config::ConfigSchema`] with a `confique::Config` type when your schema owns an
9//! include field. Use [`config::load_config`] to load the root config, all recursive
10//! includes, `.env` values, and schema-declared environment values into the
11//! final schema. Use [`config::build_config_figment`] or [`config::load_config_with_figment`]
12//! when you need runtime source tracking. Use [`config::write_config_templates`] or
13//! [`cli::ConfigCommand`] to generate example template files that mirror the same
14//! include tree. Use [`config::write_config_schemas`] to generate root and section JSON
15//! Schemas for editor completion and validation. Use
16//! [`cli::install_shell_completion`] and [`cli::uninstall_shell_completion`] for reusable
17//! shell completion lifecycle commands.
18
19pub mod cli;
20pub mod config;
21pub mod config_schema;
22pub mod error;
23pub mod path;
24pub mod template_tree;
25pub mod tree;
26
27mod config_env;
28mod config_format;
29mod config_load;
30mod config_output;
31mod config_templates;
32mod config_trace;
33mod config_util;