Swath is a robust CLI tool designed for efficiently listing large S3 buckets. It intelligently splits keyspace for parallel processing and ensures crash-safe resume capabilities. Output is globally sorted in Parquet format. Whether managing large datasets or monitoring S3 structures, swath streamlines the process while maintaining reliability.
swath is an innovative command-line tool designed to efficiently list very large Amazon S3 buckets. It operates in parallel to intelligently split the keyspace, ensuring optimal performance while listing. With its advanced features, swath excels in handling large datasets with ease and precision.

To list objects from an S3 bucket, use the following command:
docker run --rm -v "$PWD/out:/out" ghcr.io/varveio/swath:latest \
list s3://my-bucket/prefix/ --no-sign-request --format parquet -o /out/data
Or from source:
./gradlew :swath-cli:installDist
export PATH="$PWD/swath-cli/build/install/swath/bin:$PATH"
swath list s3://my-bucket/prefix/ --no-sign-request --format parquet -o out/
swath-replay-server component allows captured listings to be served as an S3-compatible endpoint. This enables deterministic access to previously listed bucket shapes without incurring additional S3 charges.swath is ideal for scenarios where precomputed listings (such as AWS S3 Inventory) are not available or practical. It provides a solution for users needing real-time insight into their S3 bucket's contents without direct reliance on object data.
Extensive documentation is provided to assist users with installation, usage, and troubleshooting. The architecture and internal workings of swath can also be explored through dedicated documentation sections.
For those interested in contributing, guidelines are outlined in the contribution section of the repository.
No comments yet.
Sign in to be the first to comment.