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.0.0.tar.gz (113.4 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.0.0-py3-none-any.whl (65.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: palace_tools-1.0.0.tar.gz
  • Upload date:
  • Size: 113.4 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.0.0.tar.gz
Algorithm Hash digest
SHA256 3777685d7d2e29abe5892b97836f9963a93b4522171f82b0139d0083e655e6aa
MD5 3cd550babe332307675e0cc39a103e81
BLAKE2b-256 ef4cb3725145a6a020c22de955c26b5c345194a39ef2c0cb9415a4fe7a78a367

See more details on using hashes here.

Provenance

The following attestation bundles were made for palace_tools-1.0.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.0.0-py3-none-any.whl.

File metadata

  • Download URL: palace_tools-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 65.3 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.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50019cc7e088a1342bb9eb6ebba37b2ed94cb4cee5a9c0a10f25f9eede271799
MD5 638d4bd053b691a65336de1b457c1842
BLAKE2b-256 86d8516a413eecececdd5b91e7c9615c23c3cefbd0a21c171f261f3ceac22d8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for palace_tools-1.0.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