Skip to content

jbcom/extended-data

Repository files navigation

Extended Data

Comprehensive Python data utilities for serialization, configuration inputs, structured logging, vendor data connectors, and workflow-oriented integrations.

This repository is the clean major-version consolidation of the previous extended-data-library Python packages. The old package namespaces are not preserved; the public API now lives under extended_data.

Install

pip install extended-data

Optional integrations are installed by feature:

pip install "extended-data[aws,github,vault]"
pip install "extended-data[google,slack,zoom]"
pip install "extended-data[ai]"
pip install "extended-data[meshy,mcp]"
pip install "extended-data[secrets]"

Usage

from extended_data import ConnectorFabric, InputProvider, Logging, decode_json, encode_yaml

logger = Logging(logger_name="example")
inputs = InputProvider(inputs={"GITHUB_OWNER": "jbcom"}, from_environment=False)
connectors = ConnectorFabric(inputs=inputs.inputs, logger=logger)
data = decode_json('{"status": "ok"}')

print(encode_yaml(data))

The fabric can also instantiate any registered connector by name:

github = connectors.get_connector(
    "github",
    github_owner="jbcom",
    github_token="...",
)

Connector names are normalized before lookup. If a known built-in connector is requested without its optional extra installed, the registry raises an ImportError with the matching extended-data[...] install target.

Package Shape

extended_data/
  core serialization, files, types, transforms
  inputs/       InputProvider and decorator-based input injection
  logging/      structured lifecycle logging
  connectors/   ConnectorFabric and vendor adapters
  secrets/      Python access to secret sync primitives
  workflows/    higher-order workflow composition

Vendor connectors are first-class adapters in the data fabric. ConnectorFabric uses the registry to resolve connectors by name, injects shared input/logging context, caches connector instances, and lets specialized helpers coexist with generic vendor lookup.

More detail lives in docs/package-surface.md.

Development

uv sync --extra tests --extra typing
uv run pytest
uv run ruff check src tests
uv build

License

MIT.

About

Comprehensive Python data utilities for serialization, inputs, logging, vendor data, and workflows

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages