Skip to main content

Easy Yaml based Configuration for Python

Project description

EYConf

Easy Yaml based Configuration for Python

PyPI - Version build status docs License: GPL v3

Why EYConf?

  • Schema-First Configuration: Define your config structure with Python dataclasses, get automatic YAML generation with comments
  • Type-Safe Access: Access nested configuration values with full IDE support and runtime type checking
  • Validation First: Catch configuration errors early with detailed, human-readable validation messages
  • Zero Boilerplate: No manual YAML parsing, no dictionary access - just clean attribute access to your configuration

Installation

You can install EYConf from PyPI using pip.

pip install eyconf

Example Usage

from dataclasses import dataclass
from eyconf import EYConf

@dataclass
class AppConfig:
    """Application configuration"""
    database_url: str = "sqlite:///app.db"
    debug: bool = False

# Creates/loads config.yaml automatically
config = EYConf(AppConfig)

# Use your config
print(config.data.debug)  # False

This will create a config.yaml file in your current working directory with the following content:

# Application configuration

database_url: sqlite:///app.db
debug: false

Please refer to the documentation for more examples and detailed usage instructions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eyconf-0.5.1.tar.gz (73.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eyconf-0.5.1-py3-none-any.whl (38.7 kB view details)

Uploaded Python 3

File details

Details for the file eyconf-0.5.1.tar.gz.

File metadata

  • Download URL: eyconf-0.5.1.tar.gz
  • Upload date:
  • Size: 73.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eyconf-0.5.1.tar.gz
Algorithm Hash digest
SHA256 e62e1ebe2614fdfb8187616ea36830f6df7e3872284d9ebd776d6ec989505a48
MD5 79885d23abff6c35bde09abdb455a641
BLAKE2b-256 6d7052a0fd13c02eca28297d58acd91a7d258a9c9dfc2c51b000e93191ded75d

See more details on using hashes here.

Provenance

The following attestation bundles were made for eyconf-0.5.1.tar.gz:

Publisher: publish.yml on semohr/eyconf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eyconf-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: eyconf-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 38.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eyconf-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d277a1e0411c32171102be2920c1c569350449126109258b70196ce63ea3118d
MD5 b551f7792ca2312e8051acd7c1208f9c
BLAKE2b-256 beb788ac5c114ee79ec59393f420ab0cdc25fb10865d3c618e55b51138e1c478

See more details on using hashes here.

Provenance

The following attestation bundles were made for eyconf-0.5.1-py3-none-any.whl:

Publisher: publish.yml on semohr/eyconf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page