
ParamFlow – lightweight layered configuration management for Python
What My Project Does I kept running into the same friction in ML projects — managing config files, environment variables, and CLI args separately, writing boilerplate to merge them, and losing track of what parameters ran in which experiment. ParamFlow solves this with a single call: import paramflow as pf params = pf . load ( ' params.toml ' ) print ( params . learning_rate ) # 0.001 print ( params . batch_size ) # 64 It merges config files, env vars, and CLI args in a defined order, activates named profiles, and returns a plain Python dict — no conversion needed, works with json.dumps, **unpacking, any serialization library. No schemas, no type annotations — types are inferred from the config file values. You can override any parameter at runtime without touching the code: python train.py --profile large --learning_rate 0.0005 or P_LEARNING_RATE = 0.0005 python train.py Target Audience Python developers who need simple, flexible config management. Particularly useful for ML/research
Continue reading on Dev.to
Opens in a new tab


