Skip to main content

Palace Tools

Project description

Palace Tools 🛠️

Code style: black Imports: isort pre-commit

What's included

CLI Tools

  • audiobook-manifest-summary (summarize_rwpm_audio_manifest.py)
  • fetch-lcp
    • audiobook-manifest
      • Given an LCP audiobook fulfillment URL, retrieve it and store/print its manifest.
    • files
      • Given an LCP audiobook fulfillment URL, retrieve and store the lcp and lcpl files.
  • patron-bookshelf
    • Print a patron's bookshelf as either a summary or in full as JSON.
  • validate-audiobook-manifests
    • Validate a directory of RWPM audiobook manifests printing any errors found.
  • palace-terminal
    • A toy terminal based media player that can be used to play audiobooks from a local directory containing audiobook manifests and their associated media files.
    • Note: This application uses python-vlc which requires VLC to be installed on the system. The VLC installation can be found here.
  • download-feed - Download various feeds for local inspection.
    • opds2
      • Download an OPDS2 / OPDS2 + ODL feed.
    • overdrive
      • Download Overdrive feeds.
    • axis
      • Download B&T Axis 360 availability feed.
  • validate-feed - Validate feeds.
    • opds2
      • Validate an OPDS2 feed
    • opds2-odl
      • Validate an OPDS2 + ODL feed
  • import-libraries-from-csv
    • Import libraries from a csv to ease the burden of setting up CMs with many libraries.
    • Note: there is a sample CSV file in the ./samples/ directory that shows the expected format of the CSV file.

Library Support

Working as a developer on this project

uv

This project uses uv for Python and dependency management. If you plan to work on this project, you will need uv.

uv can be installed with curl -LsSf https://astral.sh/uv/install.sh | sh. See the uv documentation for other installation options.

Once uv is installed, you can install the required Python version with:

uv python install 3.12

Installation

This package is published to PyPI, and can also be installed and run locally from a clone of the repository.

Installing the CLI Tools globally with pipx

Installing with pipx will be most conducive to running the CLI Tools from any directory.

If you don't already have pipx installed, you can get installation instructions here.

pipx install palace-tools

Alternatively, you can install directly from the git repository, for example to try a particular branch or commit (more details about installing from VCS here):

pipx install git+https://github.com/ThePalaceProject/palace-tools.git@branch-or-commit

If installation is successful, pipx will list the apps that are installed with the package.

Running CLI Tools from a cloned project

  • Clone the repository.
  • Change into the cloned directory.
  • Run uv sync --all-groups to install the project dependencies and the CLI tools into a .venv virtual environment.

At this point, you should be able to run the CLI tools using uv run <cli-command-and-args>.

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

palace_tools-1.1.0.tar.gz (120.7 kB view details)

Uploaded Source

Built Distribution

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

palace_tools-1.1.0-py3-none-any.whl (67.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for palace_tools-1.1.0.tar.gz
Algorithm Hash digest
SHA256 b3a5b005ecdd5c139205400bf1b1339e3b36f2212e6baecf768ed35eb0765809
MD5 fafb4dc21cc6e5f1239c1843e2b75ac6
BLAKE2b-256 6be64d28ddb94a342e30bc16a31d16d7ae2043650753a2791cd43c47693925e7

See more details on using hashes here.

Provenance

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

Publisher: publish-pypi.yml on ThePalaceProject/palace-tools

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

File details

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

File metadata

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

File hashes

Hashes for palace_tools-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f62eeedac6b5462b97232dfba41f9aebec6a1d0402d21f85f77db52b1caad02
MD5 29ec9c864d11bbeb1f474c945b88accd
BLAKE2b-256 41a7d0bcac1479d1013f222c9cdf0431a8ffead03dcc48af1dbaf559c6b4a1dc

See more details on using hashes here.

Provenance

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

Publisher: publish-pypi.yml on ThePalaceProject/palace-tools

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