| Crates.io | confiter |
| lib.rs | confiter |
| version | 0.0.1 |
| created_at | 2025-05-16 10:08:01.727478+00 |
| updated_at | 2025-05-16 10:08:01.727478+00 |
| description | Multi-level configuration framework |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1676308 |
| size | 967,283 |
A powerful multi-tier configuration management framework that simplifies the definition, access, and synchronization of layered configurations in Python applications.
Think of VSCode's configuration system: you have user settings that apply globally and workspace settings that override them for specific projects. Conftier brings this same intuitive model to your Python frameworks and applications.
For comprehensive guides, examples, and API reference, visit our documentation:
Conftier helps you manage configurations across multiple levels:
Conftier automatically merges these configurations based on priority (project > user > default).
| Without Conftier | With Conftier |
|---|---|
| Manual parsing of multiple config files | Automatic loading and merging |
| Type errors discovered at runtime | Validation at load time |
| Custom code for merging configs | Smart merging built-in |
| Documentation struggles | Schema serves as documentation |
| Repetitive boilerplate | Consistent, reusable pattern |
# Basic installation
pip install conftier
# With Pydantic support (recommended)
pip install conftier[pydantic]
from pydantic import BaseModel, Field
from conftier import ConfigManager
class AppConfig(BaseModel):
app_name: str = "MyApp"
debug: bool = False
config_manager = ConfigManager(
config_name="myapp",
config_schema=AppConfig,
auto_create=True
)
# Load the merged configuration
config: AppConfig = config_manager.load()
Conftier shines when:
This project is licensed under the terms of the MIT license.
See LICENSE for more details.
For more information, please contact: zeeland4work@gmail.com
This project was generated with P3G