Catalog PyPI
PACKAGE EXPLORERView in registry

adjsoned

PyPI

Loads required properties/config from a json file to a Python runtime object

Versions collected1
Direct dependencies0From release 0.0.4
Last observed20 Oct, 19:35 UTC

README

Version 0.0.4 documentation

Adjsoned

This Python library can help you easily load your program's configuration/properties from a json file to a Python runtime object making key-value data accessible via python's "." syntax—as these key-value pairs were fields of this object.

Installation

pip install adjsoned

Get started

Instantiate a FileJsonProperties object giving it your config file's path and it will just work:

from adjsoned import FileJsonProperties


properties = FileJsonProperties(filepath="examples/some_properties.json")

# We can now access key-value/arrays data stored in our JSON file the following way:
# (NB: the ROOT element of your JSON file MUST be a DICT!)

if properties.debug_mode:
    print("We're in debug mode!")
    print("P.S. Properties told me that :)")

# 'properties' is an instance of FileJsonProperties (as well as JsonProperties — a parent class)
# 'properties.app_version' is also a JsonProperties instance, so we can access its fields like that:
print(properties.app_version.code)  # prints '4.1.2'

# arrays are interpreted as regular Python lists, you can just normally iterate through them:
for section in properties.project_settings.ignored_sections:
    print("Ignoring section", section)

# if an array element is a dictionary, it gets interpreted as a JsonProperties object as well:
print(properties.messages[1].title)  # prints: 'Hello again.'

The JSON file used in this example:

{
  "debugMode": true,

  "appVersion": {
    "code": "4.1.2",
    "build": 2
  },

  "projectSettings": {
    "frameRate": 60,
    "ignoredSections": [2, 6, 9]
  },

  "messages": [
    {
      "title": "Hello!",
      "description": "This is the first message."
    },
    {
      "title": "Hello again.",
      "description": "This is the second one. Nice to see you again!"
    }
  ]
}

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.0.424 Feb 20230

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 19:35 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:1f507c5e913d200d0a1350c22d3cb058d4411d54576900f03cc342a4352c7378