Skip to main content

shelfctl

Personal library manager for PDFs and books using GitHub Release assets as storage.

Install

pip install shelfctl

This installs the shelfctl binary for your platform. No Python runtime is needed at execution time.

Usage

# Launch interactive TUI
shelfctl

# Add a book to a shelf
shelfctl shelve ~/book.pdf --shelf programming

# Browse your library
shelfctl browse

# Generate HTML index
shelfctl index

# Check your setup
shelfctl doctor

# Search across shelves
shelfctl search "neural networks"

What is shelfctl?

shelfctl organizes documents (PDFs, EPUBs) into topic-based "shelves" backed by GitHub repositories:

  • Metadata lives in version-controlled catalog.yml files
  • Files are stored as GitHub Release assets (free, unlimited storage for public repos)
  • Downloads are on-demand per file (no need to clone entire repos)

Other Installation Methods

Method Command
Homebrew brew install blackwell-systems/tap/shelfctl
Scoop (Windows) scoop install shelfctl
winget (Windows) winget install BlackwellSystems.shelfctl
Go install go install github.com/blackwell-systems/shelfctl/cmd/shelfctl@latest
Install script curl -fsSL https://raw.githubusercontent.com/blackwell-systems/shelfctl/main/install.sh | sh
APT/RPM Download .deb or .rpm from Releases

Supported Platforms

Platform Architecture
macOS arm64 (Apple Silicon), x86_64 (Intel)
Linux arm64, x86_64
Windows arm64, x86_64

Links

License

MIT

Metadata

Release files for shelfctl 0.4.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for shelfctl 0.4.12
File
shelfctl-0.4.12-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
shelfctl-0.4.12-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
shelfctl-0.4.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
shelfctl-0.4.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
shelfctl-0.4.12-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
shelfctl-0.4.12-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 29.4 MB

Release files / shelfctl-0.4.12-py3-none-win_arm64.whl

Download URL shelfctl-0.4.12-py3-none-win_arm64.whl
Size 4.7 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
8f0e1b79176d3ad68c8ed735717e06de97132a52ec82be6bb101a14f27711679
BLAKE2b-256 checksum
How to use checksums
37614e5a61fc34b88b6e774a37f6c9a498d7699c9594bad4c61f29b00a41de78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / shelfctl-0.4.12-py3-none-win_amd64.whl

Download URL shelfctl-0.4.12-py3-none-win_amd64.whl
Size 5.2 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
9b3fbd5af35a20abd6b6d1f9fafedb0445c2cf6deacdb215274762abfabd072b
BLAKE2b-256 checksum
How to use checksums
a069d0da63e797af1befb5c863456db804c1e8cc70555b5d6323c50583516bb0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / shelfctl-0.4.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL shelfctl-0.4.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 5.1 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
e37e2bb30d76ffe5ea11a0344f538e491130c4d5b6c659fdbab5cd0d3db4bc79
BLAKE2b-256 checksum
How to use checksums
8094c5d3779e5eae8b255fbe6c6ab3449a805d1ba397d6dca0823d9289158dd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / shelfctl-0.4.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL shelfctl-0.4.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 4.6 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
8971414e3cb77674e46efc75f037d145d0a7956b26b4ca6feab44a67e9adebf6
BLAKE2b-256 checksum
How to use checksums
de6c49864951199bf99b4d034f618bc31351214c78bfc0c4c165692c59cac747
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / shelfctl-0.4.12-py3-none-macosx_11_0_x86_64.whl

Download URL shelfctl-0.4.12-py3-none-macosx_11_0_x86_64.whl
Size 5.1 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
e530a52b483ad80559dc3778afbb205d026f85072026ab4d0112b5521beeed13
BLAKE2b-256 checksum
How to use checksums
4fa1e8a150c796874af44c51fe78394e8ba904a7211a3d68abbb0931f0e18c9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / shelfctl-0.4.12-py3-none-macosx_11_0_arm64.whl

Download URL shelfctl-0.4.12-py3-none-macosx_11_0_arm64.whl
Size 4.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1eed57a6b9442cf62edefc63670c15700bb7be1d5dfb4f4352a5c436b0e22701
BLAKE2b-256 checksum
How to use checksums
84bd3ba91e82ad68e480060da469e60405452cce2f980a268fdcf2779ceddeb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Security for shelfctl 0.4.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.4.12 This release

6 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page