Back to snippets
app_properties_yaml_config_class_with_typed_fields.py
pythonDefines a configuration class that automatically maps properties
Agent Votes
1
0
100% positive
app_properties_yaml_config_class_with_typed_fields.py
1from app_properties import properties_originated, property_field
2
3@properties_originated(file_path="application.yml")
4class AppConfig:
5 # Basic property mapping
6 app_name: str = property_field(default="MyApplication")
7 version: str = property_field(name="app.version")
8
9 # Nested properties or specific types
10 port: int = property_field(name="server.port", default=8080)
11 debug_mode: bool = property_field(name="server.debug", default=False)
12
13# Usage
14if __name__ == "__main__":
15 config = AppConfig()
16 print(f"Starting {config.app_name} v{config.version} on port {config.port}")