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.6.0.tar.gz (46.3 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.6.0-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for eyconf-0.6.0.tar.gz
Algorithm Hash digest
SHA256 7c5cc64b5903fbe5873a2719c6849207644751cc3941395f5bd79a030112d819
MD5 b91a3aa36d8149dab9edeb1f17db0db4
BLAKE2b-256 6c92fe83beff4ab1982b7514188abc68f3c9313cdc6f5083a06ff007c22b3d8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for eyconf-0.6.0.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.6.0-py3-none-any.whl.

File metadata

  • Download URL: eyconf-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 40.0 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.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c4ff1382db3c2990016bf1ac853cf57e1b6b04e1067a48861c0f4cea77784dcc
MD5 77da07b1b76933fae65991d6daa9ced1
BLAKE2b-256 18b3a0945f01e360a4da68a89bdbc3ffd5c5b627ecffa8ac2205b72014569d3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for eyconf-0.6.0-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