pyconfs


Namepyconfs JSON
Version 0.5.7 PyPI version JSON
download
home_pagehttps://github.com/gahjelle/pyconfs
SummaryPyConfs, unified handling of configuration files for Python
upload_time2025-08-25 16:40:29
maintainerNone
docs_urlNone
authorGeir Arne Hjelle
requires_python>=3.6
licenseNone
keywords configuration ini json toml yml
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PyConfs

_Unified handling of configuration files in Python_

[![Latest version](https://img.shields.io/pypi/v/pyconfs.svg)](https://pypi.org/project/pyconfs/)
[![Python versions](https://img.shields.io/pypi/pyversions/pyconfs.svg)](https://pypi.org/project/pyconfs/)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Interrogate DocStrings](https://github.com/gahjelle/pyconfs/blob/main/docs/images/interrogate_badge.svg)](https://interrogate.readthedocs.io/)
[![unit_tests](https://github.com/gahjelle/pyconfs/workflows/unit_tests/badge.svg)](https://github.com/gahjelle/pyconfs/actions)

> **Note:** For new projects, use [Configaroo](https://github.com/gahjelle/configaroo) instead.

## Installing PyConfs

PyConfs is available at [PyPI](https://pypi.org/project/pyconfs/). You can install it using Pip:

    $ python -m pip install pyconfs


## Using PyConfs

A **PyConfs Configuration** is a dictionary-like object that unifies several different configuration file formats, including INI, JSON, TOML, and YAML.

**Read a configuration from file**:

    from pyconfs import Configuration
    cfg = Configuration.from_file("sample.json")

**Access entries in a configuration**:

    package_name = cfg.name
    first_name = cfg.author.firstname


## Installing From Source

You can always download the [latest version of PyConfs from GitHub](https://github.com/gahjelle/pyconfs). PyConfs uses [Flit](https://flit.readthedocs.io/) as a setup tool.

To install PyConfs from the downloaded source, run Flit:

    $ python -m flit install --deps production

If you want to change and play with the PyConfs source code, you should install it in editable mode:

    $ python -m flit install --symlink
            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/gahjelle/pyconfs",
    "name": "pyconfs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "configuration ini json toml yml",
    "author": "Geir Arne Hjelle",
    "author_email": "geirarne@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/c3/b3/902399a6e6b8066ba7649fc0b666aca5b0405233d7a8edd4814b16380d8d/pyconfs-0.5.7.tar.gz",
    "platform": null,
    "description": "# PyConfs\n\n_Unified handling of configuration files in Python_\n\n[![Latest version](https://img.shields.io/pypi/v/pyconfs.svg)](https://pypi.org/project/pyconfs/)\n[![Python versions](https://img.shields.io/pypi/pyversions/pyconfs.svg)](https://pypi.org/project/pyconfs/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Interrogate DocStrings](https://github.com/gahjelle/pyconfs/blob/main/docs/images/interrogate_badge.svg)](https://interrogate.readthedocs.io/)\n[![unit_tests](https://github.com/gahjelle/pyconfs/workflows/unit_tests/badge.svg)](https://github.com/gahjelle/pyconfs/actions)\n\n> **Note:** For new projects, use [Configaroo](https://github.com/gahjelle/configaroo) instead.\n\n## Installing PyConfs\n\nPyConfs is available at [PyPI](https://pypi.org/project/pyconfs/). You can install it using Pip:\n\n    $ python -m pip install pyconfs\n\n\n## Using PyConfs\n\nA **PyConfs Configuration** is a dictionary-like object that unifies several different configuration file formats, including INI, JSON, TOML, and YAML.\n\n**Read a configuration from file**:\n\n    from pyconfs import Configuration\n    cfg = Configuration.from_file(\"sample.json\")\n\n**Access entries in a configuration**:\n\n    package_name = cfg.name\n    first_name = cfg.author.firstname\n\n\n## Installing From Source\n\nYou can always download the [latest version of PyConfs from GitHub](https://github.com/gahjelle/pyconfs). PyConfs uses [Flit](https://flit.readthedocs.io/) as a setup tool.\n\nTo install PyConfs from the downloaded source, run Flit:\n\n    $ python -m flit install --deps production\n\nIf you want to change and play with the PyConfs source code, you should install it in editable mode:\n\n    $ python -m flit install --symlink",
    "bugtrack_url": null,
    "license": null,
    "summary": "PyConfs, unified handling of configuration files for Python",
    "version": "0.5.7",
    "project_urls": {
        "Homepage": "https://github.com/gahjelle/pyconfs"
    },
    "split_keywords": [
        "configuration",
        "ini",
        "json",
        "toml",
        "yml"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "08fa0855f478d5e270fdb9a14c62ba018534ca1f9963ceaf5b3b095672572ce5",
                "md5": "061be49d2442d1e6396a558f8105c028",
                "sha256": "e13011ec1c99db838ba437730962a5ee9b79cad2b9b91bf84c3bf7b7d69af92c"
            },
            "downloads": -1,
            "filename": "pyconfs-0.5.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "061be49d2442d1e6396a558f8105c028",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 19592,
            "upload_time": "2025-08-25T16:40:28",
            "upload_time_iso_8601": "2025-08-25T16:40:28.028056Z",
            "url": "https://files.pythonhosted.org/packages/08/fa/0855f478d5e270fdb9a14c62ba018534ca1f9963ceaf5b3b095672572ce5/pyconfs-0.5.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c3b3902399a6e6b8066ba7649fc0b666aca5b0405233d7a8edd4814b16380d8d",
                "md5": "2d3c37290684f597046420d8ce85cad3",
                "sha256": "10becfdf0f2087db66cad6e1e9243cee25db92a08d8cc0eba0df8d773569963b"
            },
            "downloads": -1,
            "filename": "pyconfs-0.5.7.tar.gz",
            "has_sig": false,
            "md5_digest": "2d3c37290684f597046420d8ce85cad3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 22184,
            "upload_time": "2025-08-25T16:40:29",
            "upload_time_iso_8601": "2025-08-25T16:40:29.225855Z",
            "url": "https://files.pythonhosted.org/packages/c3/b3/902399a6e6b8066ba7649fc0b666aca5b0405233d7a8edd4814b16380d8d/pyconfs-0.5.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-25 16:40:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "gahjelle",
    "github_project": "pyconfs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "pyconfs"
}
        
Elapsed time: 1.43523s