nshconfig
Fully typed configuration management, powered by Pydantic.
📚 Documentation | 🔧 Installation Guide
Overview
nshconfig
is a Python library that enhances Pydantic with additional features for configuration management, particularly useful for machine learning experiments and other applications requiring strongly typed configurations.
Installation
pip install nshconfig
To install all optional dependencies, use:
pip install nshconfig[extra]
Please see the Installation Guide for more details.
Quick Start
import nshconfig as C
class MyConfig(C.Config):
field1: int
field2: str
field3: C.AllowMissing[float] = C.MISSING
config = MyConfig.draft()
config.field1 = 42
config.field2 = "hello"
final_config = config.finalize()
Key Features
- Draft configs for intuitive configuration creation
- Multiple configuration formats (Python, JSON, YAML)
- Dynamic type registry for plugin systems
- Configuration code generation tools
- Built-in PyTorch Lightning integration
- MISSING constant for optional fields
For detailed examples and API reference, please visit the documentation.
Contributing
Contributions are welcome! Please see our Contributing Guide for details.
Credit
Built on top of the excellent pydantic library.
License
MIT License