Skip to main content

Object Storage TUI client (Cloudflare R2 / Aliyun OSS)

Project description

CyberStore Setup Screen

CyberStore - TUI client for object storage — supports Cloudflare R2 && Aliyun OSS.

Tests Version Python License Made by


Features

  • Browse buckets and objects with a file-tree sidebar
  • Upload / download files with progress bar
  • Delete single or multiple objects (multi-select with Space)
  • Generate presigned URLs and CDN links
  • Create buckets
  • Fuzzy search within a bucket
  • Switch between Cloudflare R2 and Aliyun OSS

Installation

Option 1: Install via pipx (recommended)

pipx install cyberstore-tui

Option 2: Install via install script (downloads the latest release binary)

curl -fsSL https://raw.githubusercontent.com/amazingchow/cyberstore/master/scripts/install.sh | bash

Optional environment variables:

  • INSTALL_DIR — Directory to install the binary (default: /usr/local/bin). Example, install to your user bin: INSTALL_DIR=~/.local/bin bash -c "$(curl -fsSL https://raw.githubusercontent.com/amazingchow/cyberstore/master/scripts/install.sh)"
  • CYBERSTORE_VERSION — Pin to a specific release (e.g. v1.2.0). Omit to install the latest.

Then run:

cyberstore

Configuration

On first launch, the Setup screen appears. Select your storage provider and fill in the credentials.

Cloudflare R2 (default)

Field Description
Account ID Your Cloudflare account ID
Access Key ID R2 API token access key ID
Secret Access Key R2 API token secret access key

Credentials are stored in ~/.config/cyberstore/config.toml under the [r2] section.

Aliyun OSS

Field Description
Endpoint OSS endpoint, e.g. https://oss-cn-hangzhou.aliyuncs.com
Bucket OSS bucket name
Access Key ID Aliyun RAM access key ID
Access Key Secret Aliyun RAM access key secret

Credentials are stored under the [oss] section. The active provider is recorded as storage_provider = "oss".

CDN (optional, R2 only)

Field Description
Custom Domain Your CDN domain, e.g. cdn.example.com
R2.dev Subdomain R2 public bucket subdomain

Example ~/.config/cyberstore/config.toml

storage_provider = "r2" # or "oss"

[r2]
account_id = "abc123"
access_key_id = "..."
secret_access_key = "..."

[oss]
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
bucket = "my-bucket"
access_key_id = "..."
access_key_secret = "..."

[cdn]
custom_domain = "cdn.example.com"
r2_dev_subdomain = ""

[preferences]
theme = "textual-dark"
download_path = "/Users/you/Downloads"
upload_path = "/Users/you"
presigned_expiry = 3600

Key Bindings

Key Action
u Upload file
d Download file
x Delete object(s)
l Get links
i Object info
c Copy object key
r Refresh
/ Search
Escape Clear search
Space Toggle select
Backspace Go up one level
n New bucket
f New folder
s Open setup
Ctrl+T Cycle theme
q Quit

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

cyberstore_tui-0.1.0.tar.gz (137.3 kB view details)

Uploaded Source

Built Distribution

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

cyberstore_tui-0.1.0-py3-none-any.whl (35.6 kB view details)

Uploaded Python 3

File details

Details for the file cyberstore_tui-0.1.0.tar.gz.

File metadata

  • Download URL: cyberstore_tui-0.1.0.tar.gz
  • Upload date:
  • Size: 137.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cyberstore_tui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 977e16a7fbf174b45fd4b2b74bbc62611250cb051ddce895e62482df00a1e287
MD5 d5d4b1bd49db8e6da0b8a15b8ef0b67a
BLAKE2b-256 127fb278308820c7b7b9cd82f444d4a5fed558588392b88847b852d60781f4d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyberstore_tui-0.1.0.tar.gz:

Publisher: release.yml on amazingchow/cyberstore

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

File details

Details for the file cyberstore_tui-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: cyberstore_tui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 35.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cyberstore_tui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 194f2814338898ae7b04a4fb527d7927b31b192cad60a832e9b6124f33bfe681
MD5 c04e05f679269deba630b82ca4fd35eb
BLAKE2b-256 fda8dc6d31bcf4bf6ad22ab5f0ce7128572b66386bd8e2386c701a10122553fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for cyberstore_tui-0.1.0-py3-none-any.whl:

Publisher: release.yml on amazingchow/cyberstore

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