skillfed

application-properties

A simple, easy to use, unified manner of accessing program properties.

application-properties v0.9.3 1.6M downloads/30d#3,752 on PyPI3
Permissive license MIT Active released

What it is and what it does

application_properties is a configuration management library that loads application settings from JSON, YAML, and TOML files and provides a unified interface to retrieve them. It's designed for developers who need to add configuration handling to Python projects without complex setup, supporting hierarchical property names using dot notation and optional command-line property overrides.

The package separates configuration loading from value access, allowing custom loaders to be added. It includes an ApplicationPropertiesFacade object for restricting access to properties under a specific hierarchy—useful for plugin systems or multi-tenant scenarios. The library supports Python 3.10 through 3.13 and has been tested with over 280 tests and coverage above 99%.

Use it for:

  • Load application settings from YAML or TOML files at startup and access them throughout your application.
  • Restrict plugin or module access to only their relevant configuration subtree using ApplicationPropertiesFacade.
  • Override specific configuration values via command line without modifying configuration files.
  • Build a configuration system that supports multiple file formats (JSON, YAML, TOML) interchangeably.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Loads and retrieves application configuration from JSON, YAML, and TOML files with hierarchical property access and command-line override support.

Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and covers a common need (configuration retrieval) with solid test coverage. It's appropriate for projects requiring simple to moderately complex configuration handling without external service dependencies.

Install

application-properties on PyPI

pip

pip install application-properties

uv

uv add application-properties

poetry

poetry add application-properties

Installing application-properties

Before you install

Low install friction with four lightweight runtime dependencies (typing-extensions, tomli, pyyaml, pyjson5). Actively maintained with recent releases and no known vulnerabilities.

License in practice

MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects.

Quickstart

pip install application-properties

from application_properties import ApplicationProperties

props = ApplicationProperties()
props.load_from_file('config.yaml')
value = props.get_string_property('app.setting.name')

Requires Python 3.10 or later.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10.0)
Install friction low — pure-Python wheel
Runtime dependencies 4 — typing-extensions, tomli, pyyaml, pyjson5
Maintenance actively maintained — 73 days since the last release
Last repo commit
First released
Downloads 1,568,314/month — #3,752 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: application_properties-0.9.3-py3-none-any.whl

Keywords: properties

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: Software Development :: Libraries :: Application Frameworks

Tags

configuration file loaderproperties managementyaml json toml confighierarchical configurationapplication settings retrieval
configuration-managementplugin-friendly

More Application Frameworks packages