Skip to content

Latest commit

 

History

History
92 lines (59 loc) · 2.02 KB

File metadata and controls

92 lines (59 loc) · 2.02 KB

R2D2

R2D2 is a command-line interface tool designed to simplify and automate file uploads to S3 or Cloudflare R2 buckets.

Features

  • File Uploads: Easily upload files to S3 or R2 buckets.
  • Configuration Management: Save and manage AWS/R2 credentials and bucket settings.
  • Progress Tracking: Real-time upload progress with a spinner.
  • Cross-Platform: Works on Windows, macOS, and Linux.
  • Extensible: Built with TypeScript for easy customization.

Installation

To install R2D2, use the following command:

(npm/bun/pnpm/yarn) install -g @zeitgg/r2d2

Ensure you have Node.js installed before proceeding.

Usage

Once installed, you can start using R2D2 by typing:

r2d2 [command] [options]

For a list of available commands, run:

r2d2 --help

Commands

Configure

Set up your AWS/R2 credentials. The bucket name is no longer stored in configuration and will be prompted for each upload.

r2d2 configure
# or use the alias
r2d2 config

Upload

Upload a file to an S3/R2 bucket. You'll be prompted for the bucket name for each upload.

r2d2 upload <filePath>

Example:

# Simple file upload
r2d2 upload ./example.txt

# Files with spaces in the name
r2d2 upload "./my file with spaces.txt"

Configuration

The configure command will prompt you to enter:

  • AWS Access Key ID
  • AWS Secret Access Key
  • Region
  • Bucket Name
  • (Optional) R2 Account ID

The configuration is saved locally in ~/.r2d2/config.json.

Contributing

Contributions are welcome! If you'd like to contribute, please fork the repository and submit a pull request. For major changes, open an issue first to discuss what you'd like to change.

License

This project is licensed under the ISC License.

Feedback

If you encounter any issues or have suggestions, feel free to open an issue on the GitHub repository.


Simplify your cloud storage workflows with R2D2. May the automation be with you!