Welcome to S3 UI

Connect to AWS S3, MinIO, Cloudflare R2, Supabase, or any S3-compatible storage.

Required for MinIO, Cloudflare R2, Supabase. Leave empty for AWS S3.

Where To Get These things? See Demo

Storage Explorer

A modern file manager for S3-compatible storage

S3-UI turns any S3-compatible bucket into a polished cloud storage workspace. Connect once, then browse folders, upload files, preview documents, and manage objects — without touching the AWS console.

  • VS Code-style explorer

    Sidebar tree, breadcrumbs, list and grid views, and a resizable layout built for real folder navigation.

  • Works with your provider

    Amazon S3, Supabase Storage, Cloudflare R2, MinIO, and any other S3-compatible endpoint.

  • Full file operations

    Upload, download, create folders, delete, preview, search, and inspect file details from one interface.

  • Your keys stay in your browser

    Credentials are saved only in local storage on your device — never on our servers.

S3-UI file explorer

★
S3-Compatible Providers

This UI works with any S3-compatible storage. Leave the endpoint empty for AWS S3, or fill it in for other providers.

MinIO (local)

env
Bucket Name: erp-storage
Access Key: minioadmin
Secret Key: minioadmin
Region: eu-north-1
Endpoint: http://localhost:9000

Cloudflare R2

env
Bucket Name: my-bucket
Access Key: <R2 access key>
Secret Key: <R2 secret key>
Region: auto
Endpoint: https://<account_id>.r2.cloudflarestorage.com

Supabase Storage

env
Bucket Name: my-bucket
Access Key: <project ref>
Secret Key: <service role or s3 key>
Region: us-east-1
Endpoint: https://<project_ref>.supabase.co/storage/v1/s3

Supported Providers

  • AWS S3 - leave endpoint empty, use your AWS region and IAM keys
  • MinIO - set endpoint to your MinIO server (e.g. http://localhost:9000)
  • Cloudflare R2 - use your R2 S3 API endpoint
  • Supabase Storage - use the S3-compatible endpoint from project settings
  • Other S3-compatible - DigitalOcean Spaces, Backblaze B2, Wasabi, etc.

The UI auto-detects your provider from the endpoint and shows the matching branding on the bucket page.

1
Create an AWS Account

AWS Console

After login, you'll land on the AWS console.

aws_signin

2
Create IAM User

You must create a user to generate access keys.

  • Step 1: User details

    Give any username.

  • Step 2: Permissions

    Add AmazonS3FullAccess.

    premissions
  • Step 3: Review

    Get access + secret key.

iam

3
Create Access Keys

Open user → Create Access Key.

  • Step 1: Choose use-caseaccess keys
  • Step 2: Add tags (optional)
  • Step 3: Copy or download keys
keys

4
Create S3 Bucket

Bucket name must be unique.

create bucket

Disable block public access & set CORS.

bucket

5
Set CORS & Public Access

Paste this CORS config:

json
[
  {
    "AllowedHeaders": ["*"],
    "AllowedMethods": ["GET", "PUT", "POST", "DELETE"],
    "AllowedOrigins": ["https://s3-ui.kishore-sv.me/"],
    "ExposeHeaders": []
  }
]
cors

6
Bucket Policy (Optional)

json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::yourbucketName/*"
    }
  ]
}
bucket policy