Palace Tools
Project description
Palace Tools 🛠️
What's included
CLI Tools
audiobook-manifest-summary(summarize_rwpm_audio_manifest.py)- Produce a summary description from a Readium Web Publication Manifest (RWPM) manifest conforming to the Audiobook Profile.
fetch-lcpaudiobook-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-vlcwhich 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
- Models for parsing and processing manifests in the Audiobook Profile of the Readium Web Publication Manifest (RWPM) specification.
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-groupsto install the project dependencies and the CLI tools into a.venvvirtual environment.
At this point, you should be able to run the CLI tools using uv run <cli-command-and-args>.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3777685d7d2e29abe5892b97836f9963a93b4522171f82b0139d0083e655e6aa
|
|
| MD5 |
3cd550babe332307675e0cc39a103e81
|
|
| BLAKE2b-256 |
ef4cb3725145a6a020c22de955c26b5c345194a39ef2c0cb9415a4fe7a78a367
|
Provenance
The following attestation bundles were made for palace_tools-1.0.0.tar.gz:
Publisher:
publish-pypi.yml on ThePalaceProject/palace-tools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
palace_tools-1.0.0.tar.gz -
Subject digest:
3777685d7d2e29abe5892b97836f9963a93b4522171f82b0139d0083e655e6aa - Sigstore transparency entry: 1310731307
- Sigstore integration time:
-
Permalink:
ThePalaceProject/palace-tools@fff911f25d76cab8efe71ea7484ead7ab4dff855 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/ThePalaceProject
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@fff911f25d76cab8efe71ea7484ead7ab4dff855 -
Trigger Event:
release
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50019cc7e088a1342bb9eb6ebba37b2ed94cb4cee5a9c0a10f25f9eede271799
|
|
| MD5 |
638d4bd053b691a65336de1b457c1842
|
|
| BLAKE2b-256 |
86d8516a413eecececdd5b91e7c9615c23c3cefbd0a21c171f261f3ceac22d8a
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
palace_tools-1.0.0-py3-none-any.whl -
Subject digest:
50019cc7e088a1342bb9eb6ebba37b2ed94cb4cee5a9c0a10f25f9eede271799 - Sigstore transparency entry: 1310731397
- Sigstore integration time:
-
Permalink:
ThePalaceProject/palace-tools@fff911f25d76cab8efe71ea7484ead7ab4dff855 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/ThePalaceProject
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@fff911f25d76cab8efe71ea7484ead7ab4dff855 -
Trigger Event:
release
-
Statement type: