Class
Dataclasses make great config classes with the addition of to_dict.
import secrets
from dataclasses import dataclass, asdict
from .default import get_default_data_dir
@dataclass
class Config:
data_dir: str = str(get_default_data_dir())
data_file: str = str(get_default_data_dir() / "stuff")
secret_key: str = secrets.token_hex()
client_id: str | None = None
client_secret: str | None = None
def to_dict(self):
return asdict(self)