Skip to main content

Command-line toolkit and async Python API client for Eledo.

Project description

eledoctl

CI codecov Release License: MIT Eledo Eledo PDF automation overview

eledoctl is an open-source command-line toolkit for Eledo.

It contains two Python modules:

  • pyeledo — async-native Python API client for Eledo REST APIs
  • eledoctl — CLI, REPL, and automation layer built on top of pyeledo

The project is MIT licensed. Public functionality is exposed through pyeledo and eledoctl, while internal Eledo tooling is implemented as optional extensions.

Architecture

repo/
├── src/
│   ├── pyeledo/       # Async SDK / REST client
│   └── eledoctl/      # CLI / REPL / orchestration
└── tests/
    ├── pyeledo/
    └── eledoctl/

pyeledo is async-first and async-only. It never stores credentials. Tokens are passed to the client by the caller.

from pyeledo import EledoClient, TemplateScope

async with EledoClient(token="...") as client:
    profile = await client.get_profile()
    templates = await client.get_templates(scope=TemplateScope.PRIVATE)

Initial CLI Tree

eledoctl login
eledoctl profile
eledoctl templates
eledoctl documents generate TEMPLATE_ID --payload payload.json --output output.pdf
eledoctl internal

For now the CLI passes an empty token unless --token is provided. Persistent token storage will be added later in eledoctl, not in pyeledo.

Installation

pip install eledoctl

Development

The project uses modern Python tooling based on uv.

Create or update the development environment

uv sync --group dev

Run the test suite

uv run pytest

Run the CLI

uv run eledoctl --help

Format the code

uv run ruff format .

Run linting

uv run ruff check .

Run type checking

uv run mypy src

Full validation

uv run ruff format .
uv run ruff check .
uv run mypy src
uv run pytest

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

eledoctl-1.1.0.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eledoctl-1.1.0-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file eledoctl-1.1.0.tar.gz.

File metadata

  • Download URL: eledoctl-1.1.0.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eledoctl-1.1.0.tar.gz
Algorithm Hash digest
SHA256 07e19ba0502bde5dfd14cf7a8f4c8fc28c9a6e51fc3f4ac6bb3574ec5d93b8ec
MD5 8ab912f6f7090f6207430f1477b9be53
BLAKE2b-256 5b0ba5b3b514b83a0668e30ff5b5a01848560f848a21dfb03893f3fe8457947f

See more details on using hashes here.

Provenance

The following attestation bundles were made for eledoctl-1.1.0.tar.gz:

Publisher: publish.yml on eledo-online/eledoctl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eledoctl-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: eledoctl-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 32.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eledoctl-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 444fab40105579754bf91c61ce733a7a674a403b910d115aa6c01c1008d2a0ba
MD5 978337c7c2f1c8f280a7a50f49a459fa
BLAKE2b-256 58a0c8998fc5dbe9de24de13ed459941504358311ba157eb83bb57b41a8f7219

See more details on using hashes here.

Provenance

The following attestation bundles were made for eledoctl-1.1.0-py3-none-any.whl:

Publisher: publish.yml on eledo-online/eledoctl

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