My S3 Browser
February 2, 2026 ยท View on GitHub
A modern Chrome extension for browsing and managing Amazon S3 buckets, built with Vue 3, TypeScript, and AWS SDK v3.
Features
- Browse S3 buckets and folders
- Upload files to S3
- Download files with pre-signed URLs
- Create folders
- Delete files and folders
- Search within current folder
- Pagination for large folders
- Multiple AWS credential profiles
- Manifest V3 compliant
Tech Stack
- Framework: Vue 3 with Composition API
- Language: TypeScript 5.x
- Build Tool: Vite
- AWS SDK: v3 (modular)
- UI: Bootstrap 5 + Bootstrap Icons
- State: Pinia
- Manifest: V3
Development
Prerequisites
- Node.js 18+ and npm
- Chrome browser
Installation
npm install
Development Server
npm run dev
This will start Vite in watch mode. The extension will be built to the dist/ folder.
Load Extension in Chrome
- Open Chrome and navigate to
chrome://extensions - Enable "Developer mode" (toggle in top-right)
- Click "Load unpacked"
- Select the
dist/folder
The extension will automatically reload when you make changes during development.
Build for Production
npm run build
The production-ready extension will be in the dist/ folder.
Usage
- Click the extension icon to open My S3 Browser
- Add your AWS credentials:
- Click the credentials dropdown
- Select "Add New Credential"
- Enter your Access Key ID, Secret Access Key, and Region
- Select a bucket from the bucket dropdown
- Browse, upload, download, and manage your S3 files
Security
- Credentials are stored securely in Chrome's local storage
- All S3 operations go directly from your browser to AWS
- No data is sent to third-party servers
Migration from Angular 4
This is a complete rebuild from Angular 4 to Vue 3:
- Migrated from Manifest V2 to V3 (Chrome requirement)
- Updated from AWS SDK v2 to v3
- Modern TypeScript and build tooling
- Improved UI with Bootstrap 5
License
MIT
Contributing
Issues and pull requests are welcome on GitHub.