Vapour
Vapour is a pluggable remote-storage manager for Python 3.13+. A provider-neutral abstract layer defines the contract — StorageProvider, RemoteEntry, TransferProgress, ProviderConfig, and ProviderOptions — and each backend ships as an independent provider module registered under a short name. The vapour command is a thin adapter over the Python API.
Highlights
StorageProvidercontract covering connection checks, quota, listing, stat, mkdir, file and directory transfers, move, copy, delete, and version.- Providers register through
@register_providerand load lazily:create_provider(name)importsvapour.<name>on first use. - Bundled
teraboxbackend through the unofficialrclone-extrabuild; the session cookie lives only in process environment and is never written to a config file. - Provider-specific settings travel through
ProviderConfig.parameters(upload_threads,domainfor TeraBox), so new backends need no abstract-layer changes. vapourCLI with--provider,--root,--param KEY=VALUE,--json, and--progress.
Installation
python -m pip install .
For development:
python -m pip install -e '.[test]'
Quick start
export TERABOX_COOKIE='<browser ndus cookie>'
vapour providers
vapour quota
vapour ls backups/ --recursive
vapour upload archive.tar backups/archive.tar --progress
from vapour import ProviderConfig, create_provider
provider = create_provider("terabox", config=ProviderConfig())
for entry in provider.ls("backups/"):
print(entry.path, entry.size)
License
MIT.
Directory contents
Files
LICENSE— Provide LICENSE project content.__init__.py— Vapour public API: pluggable remote storage management.__main__.py— Execute Vapour aspython -m vapour.cli.py— Thin command-line adapter over the Vapour provider layer.provider.py— Provider-neutral remote storage abstraction for Vapour.pyproject.toml— Provide pyproject toml content.terabox.py— TeraBox backend for Vapour using the unofficial rclone-extra build.
Subdirectories
No subdirectories.
Metadata
Release files for vapour 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| vapour-0.1.0.tar.gz | 14.7 kB | Without provenance | Details for vapour-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| vapour-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for vapour-0.1.0-py3-none-any.whl |
Total release size: 31.2 kB
Release files / vapour-0.1.0.tar.gz
| Download URL | vapour-0.1.0.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a624fd40d7268df8d8cda5f7e2f2c4fda24c138707d3d6faa3da84886bd0f7b7
|
|
BLAKE2b-256 checksum How to use checksums |
b4f4bded620b22e10436ecbd441d451d6d2f43b42dd9fa3692696d72b6fc970f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / vapour-0.1.0-py3-none-any.whl
| Download URL | vapour-0.1.0-py3-none-any.whl |
|---|---|
| Size | 16.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
306341dea3b582b9acd6c4e0c829ac6478fef2131a19d69d20f115582560b2c1
|
|
BLAKE2b-256 checksum How to use checksums |
c531379f59b57897a51a7f08462c26bdeb2e7b0d85411099012b497c35c98624
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Security for vapour 0.1.0
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.