Skip to main content

Terminal User Interface for AWS S3 with ranger-style navigation

Project description

S3 TUI

A Terminal User Interface (TUI) for AWS S3 with ranger-style navigation.

Features

  • 📦 Browse S3 Buckets - View all your S3 buckets at a glance
  • 📁 Multi-pane Navigation - Ranger-style interface with up to 4 panes
  • 📥 File Downloads - Download files from S3 with a simple dialog
  • 📋 Copy S3 Paths - Copy S3 URIs to clipboard
  • 🔍 Real-time Search - Filter items as you type
  • Fast Navigation - Keyboard-driven interface
  • 🌙 Dark Mode - Easy on the eyes
  • 🔄 Async Loading - Non-blocking UI with loading indicators

Installation

From PyPI (once published)

pip install s3tui

From Source

git clone https://github.com/joeyism/s3tui.git
cd s3tui
pip install -e .

Prerequisites

You need AWS credentials configured. S3 TUI will use credentials from:

  • Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
  • AWS credentials file (~/.aws/credentials)
  • IAM role (if running on EC2)

Usage

Simply run:

s3tui

Keybindings

Key Action
↑/↓ or j/k Navigate items up/down
or Enter Open bucket/folder, or show file actions
or h Go back to previous pane
/ Focus search bar
Esc Clear search / Cancel dialog
q or Ctrl+C Quit

Features in Detail

Multi-Pane Navigation

Navigate through S3 buckets and folders with up to 4 side-by-side panes. The number of panes adapts to your terminal width (minimum 30 characters per pane).

File Actions

When you select a file (press or Enter), a dialog appears with options to:

  • Download: Save the file to your local filesystem (specify path or use current directory)
  • Copy S3 Path: Copy the S3 URI (e.g., s3://bucket/path/to/file) to clipboard
  • Cancel: Return to the pane view

Search/Filter

Press / to focus the search bar and filter items in real-time. Press Esc to clear the search and return focus to the file list.

Loading Indicators

When navigating into folders or buckets, or downloading files, a loading popup appears while fetching data from S3.

Requirements

  • Python 3.8+
  • boto3
  • textual

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

s3tui-0.1.0.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

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

s3tui-0.1.0-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: s3tui-0.1.0.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for s3tui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 299a7bf743a967f9ed7341c9dbbbbea8e4d297533c9069ba465abd931992c82f
MD5 82a2a30dfd3e1fa9da95722bce6f83e3
BLAKE2b-256 c76b6f902e8bcd52d92be50c0dcffef7f983bdbba1ee89a2469b6851c1117bf0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: s3tui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for s3tui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d0d6fb06739291308dc9753bde165a0ca299395fee668a713d982580d61a2841
MD5 2863a3eac536e31dc65ddfacc68b4415
BLAKE2b-256 8059debe682ecbac7663d906bf9544a679409fffe491162e9f211658f7b000a1

See more details on using hashes here.

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