Fully typed configuration management, powered by Pydantic
Project description
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: Annotated[float, C.AllowMissing()] = 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nshconfig-0.42.4.tar.gz.
File metadata
- Download URL: nshconfig-0.42.4.tar.gz
- Upload date:
- Size: 34.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.3 Linux/6.8.0-57-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e571b6ba9a016df113c8d88d2e1c5b7d7af66336c6e236d659ef7a18729cacb
|
|
| MD5 |
66890a8e684ad735f9c712c6e371f686
|
|
| BLAKE2b-256 |
1767cf9e520ae2b0c785a2f259b811b16c5a1344df5fafa1edc2bde0d89da4bf
|
File details
Details for the file nshconfig-0.42.4-py3-none-any.whl.
File metadata
- Download URL: nshconfig-0.42.4-py3-none-any.whl
- Upload date:
- Size: 39.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.3 Linux/6.8.0-57-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
963579343b12dd41996acaccaaca756188454740733a6aafb33021c524f751d5
|
|
| MD5 |
820776e2a1c4ba3b6bedaf5fafb610cb
|
|
| BLAKE2b-256 |
16ea1c05b727d563078c991e74fa210c85a4b692b4d7dd90a3fd6f3fac79fbcb
|