Releases: ODudek/s3deck
S3 Deck v0.3.1
Added
- AWS Profile Integration: Full support for AWS CLI profiles in Add Bucket Configuration
- Automatic loading of profiles from
~/.aws/configwithout validation delays - Smart bucket loading for selected AWS profiles with comprehensive error handling
- Support for mixed credential types (manual keys vs. AWS profiles) in the same application
- Profile-based bucket configurations with automatic credential management
- Automatic loading of profiles from
- Enhanced Dropdown Components: Complete overhaul of searchable dropdown functionality
- Portal-based rendering to prevent dropdown clipping in modals
- True dropdown behavior: shows all options on open, search filters without replacing selection
- Visual indication of selected items with checkmarks and highlighting
- Improved keyboard navigation and accessibility
- Dynamic positioning that adapts to scroll and window resize
- Intelligent Error Handling: Advanced error system for AWS operations
- User-friendly error messages with specific remediation steps
- Context-aware error display (notifications for general errors, inline for form-specific issues)
- Automatic form state management based on error conditions
- Graceful handling of expired credentials, network issues, and permission errors
Changed
- Frontend Architecture Refactor: Complete modular component reorganization
- Split large components (AppContent, ObjectsTable, Header) into smaller, focused components
- Organized components by functionality (layout/, navigation/, object/, ui/, modals/)
- Created reusable UI component system (Button, Modal, Input, LoadingSpinner, EmptyState)
- Refactored useS3Operations hook into specialized hooks (useBuckets, useObjects, useS3Delete, etc.)
- Improved code maintainability and development experience
- Better performance through smaller, optimized components
- Enhanced testing capabilities with modular architecture
- AWS Profile Workflow: Streamlined profile-based bucket configuration
- Removed automatic profile validation to eliminate loading delays
- Lazy validation approach: credentials are checked only when needed
- Improved form validation logic that adapts to configuration mode (manual vs. profile)
- Enhanced profile selection UI without status indicators for cleaner experience
Fixed
- Dropdown Modal Clipping: Resolved issues with dropdown menus being cut off by modal boundaries
- Implemented React portals for dropdown rendering outside modal containers
- Eliminated need for scrolling within modals to see dropdown options
- Proper z-index hierarchy: modals (50) < dropdowns (60) < notifications (70)
- AWS Profile Error Handling: Comprehensive improvement of error communication
- Replaced generic "service error" messages with specific, actionable error descriptions
- Added automatic bucket selection disabling when profile credentials are invalid
- Clear visual indication when AWS operations fail with recovery suggestions
- Form State Management: Intelligent form behavior based on AWS operations
- Automatic clearing of selected buckets when profile errors occur
- Prevention of invalid form submissions in AWS Profile mode
- Proper credential field handling for different configuration modes
Performance
- Faster AWS Profile Loading: Eliminated blocking validation calls during profile enumeration
- Instant profile loading from local AWS configuration files
- Deferred validation until actual S3 operations are needed
- Reduced modal opening time for AWS Profile configuration mode
- Optimized Dropdown Rendering: Portal-based dropdowns prevent modal layout recalculation
- Improved scrolling performance in modals with long dropdown lists
- Reduced memory usage during dropdown interactions
Security
- Enhanced AWS Credential Handling: Improved security for profile-based configurations
- Backend automatically selects appropriate credential provider (direct keys vs. AWS profiles)
- Support for AWS credential provider chain including SSO, instance profiles, and environment variables
- Reduced credential exposure by supporting profile-only configurations
Documentation
- Component Documentation: Updated CLAUDE.md with new AWS Profile integration architecture
- Specialized Hooks: Documented focused S3 operation hooks for better code organization
- AWS Profile System: Comprehensive documentation of profile-based configuration workflow
- Dropdown Components: Technical documentation for portal-based dropdown implementation
S3 Deck v0.3.0
Added
- AWS Profile Integration: Full support for AWS CLI profiles in Add Bucket Configuration
- Automatic loading of profiles from
~/.aws/configwithout validation delays - Smart bucket loading for selected AWS profiles with comprehensive error handling
- Support for mixed credential types (manual keys vs. AWS profiles) in the same application
- Profile-based bucket configurations with automatic credential management
- Automatic loading of profiles from
- Enhanced Dropdown Components: Complete overhaul of searchable dropdown functionality
- Portal-based rendering to prevent dropdown clipping in modals
- True dropdown behavior: shows all options on open, search filters without replacing selection
- Visual indication of selected items with checkmarks and highlighting
- Improved keyboard navigation and accessibility
- Dynamic positioning that adapts to scroll and window resize
- Intelligent Error Handling: Advanced error system for AWS operations
- User-friendly error messages with specific remediation steps
- Context-aware error display (notifications for general errors, inline for form-specific issues)
- Automatic form state management based on error conditions
- Graceful handling of expired credentials, network issues, and permission errors
Changed
- Frontend Architecture Refactor: Complete modular component reorganization
- Split large components (AppContent, ObjectsTable, Header) into smaller, focused components
- Organized components by functionality (layout/, navigation/, object/, ui/, modals/)
- Created reusable UI component system (Button, Modal, Input, LoadingSpinner, EmptyState)
- Refactored useS3Operations hook into specialized hooks (useBuckets, useObjects, useS3Delete, etc.)
- Improved code maintainability and development experience
- Better performance through smaller, optimized components
- Enhanced testing capabilities with modular architecture
- AWS Profile Workflow: Streamlined profile-based bucket configuration
- Removed automatic profile validation to eliminate loading delays
- Lazy validation approach: credentials are checked only when needed
- Improved form validation logic that adapts to configuration mode (manual vs. profile)
- Enhanced profile selection UI without status indicators for cleaner experience
Fixed
- Dropdown Modal Clipping: Resolved issues with dropdown menus being cut off by modal boundaries
- Implemented React portals for dropdown rendering outside modal containers
- Eliminated need for scrolling within modals to see dropdown options
- Proper z-index hierarchy: modals (50) < dropdowns (60) < notifications (70)
- AWS Profile Error Handling: Comprehensive improvement of error communication
- Replaced generic "service error" messages with specific, actionable error descriptions
- Added automatic bucket selection disabling when profile credentials are invalid
- Clear visual indication when AWS operations fail with recovery suggestions
- Form State Management: Intelligent form behavior based on AWS operations
- Automatic clearing of selected buckets when profile errors occur
- Prevention of invalid form submissions in AWS Profile mode
- Proper credential field handling for different configuration modes
Performance
- Faster AWS Profile Loading: Eliminated blocking validation calls during profile enumeration
- Instant profile loading from local AWS configuration files
- Deferred validation until actual S3 operations are needed
- Reduced modal opening time for AWS Profile configuration mode
- Optimized Dropdown Rendering: Portal-based dropdowns prevent modal layout recalculation
- Improved scrolling performance in modals with long dropdown lists
- Reduced memory usage during dropdown interactions
Security
- Enhanced AWS Credential Handling: Improved security for profile-based configurations
- Backend automatically selects appropriate credential provider (direct keys vs. AWS profiles)
- Support for AWS credential provider chain including SSO, instance profiles, and environment variables
- Reduced credential exposure by supporting profile-only configurations
Documentation
- Component Documentation: Updated CLAUDE.md with new AWS Profile integration architecture
- Specialized Hooks: Documented focused S3 operation hooks for better code organization
- AWS Profile System: Comprehensive documentation of profile-based configuration workflow
- Dropdown Components: Technical documentation for portal-based dropdown implementation
Full Changelog: v0.2.2...v0.3.0
S3 Deck v0.2.2
🚀 S3 Deck v0.2.2 - 2025-01-01
✨ Added
- Show Folder Modified Dates Setting: New toggle in Configuration to control folder modification date display (default: disabled for better performance)
- Demo GIF in README with dedicated Preview section for better project showcase
🔄 Changed
- Consistent Text Colors: Unified all text colors in Configuration view to use consistent gray-800/gray-300 pattern for better readability
- Performance Optimization: Folder modification dates are now opt-in to prevent slow S3 API calls and potential errors
- Better Error Handling: Improved error messaging for folder date fetching with graceful fallbacks
🐛 Fixed
- Critical Drag & Drop Bug: Fixed issue where dragging a folder would upload the entire parent directory instead of just the selected folder
- Universal Drag & Drop Logic: Implemented proper common parent path detection that works for folders at any depth
- S3 Key Building: Corrected backend logic to properly handle dragged items regardless of their filesystem location
🚀 Easy Installation
One-line installer for all platforms (Recommended):
# Install latest version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash
# Install this specific version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash -s -- -v v0.2.2This installer will:
- ✅ Auto-detect your OS and architecture
- ✅ Download the correct binary from this release
- ✅ Fix macOS security issues automatically
- ✅ Install to the right location for your platform
- ✅ No prerequisites required - just works!
📦 Manual Download
Alternatively, choose the file for your platform:
🪟 Windows
*.msi- Windows Installer
🍎 macOS
*_aarch64.dmg- Apple Silicon (M1/M2/M3/M4)*_x64.dmg- Intel Macs
🐧 Linux
*.AppImage- Universal Linux binary*.deb- Debian/Ubuntu package
macOS Note: If you see "app is damaged", it's normal for unsigned apps. Use the installer above or run:
xattr -cr S3Deck.app
💡 Need Help?
Full Changelog: https://github.com/ODudek/s3deck/blob/main/CHANGELOG.md
S3 Deck v0.2.1
🚀 S3 Deck v0.2.1 - 2024-08-25
✨ Added
- Smart context menu positioning that automatically adjusts to viewport boundaries
- Intelligent menu placement (shows above when too close to bottom, left when too close to right)
- Global cursor pointer styles for all interactive elements
- Context menu margin safety zones to prevent edge clipping
🐛 Fixed
- Button cursor pointer missing after Tailwind CSS v4 migration
- Context menu overflow issues when right-clicking near viewport edges
- Interactive elements not showing proper cursor on hover
- Context menu accessibility in constrained viewport areas
🚀 Easy Installation
One-line installer for all platforms (Recommended):
# Install latest version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash
# Install this specific version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash -s -- -v v0.2.1This installer will:
- ✅ Auto-detect your OS and architecture
- ✅ Download the correct binary from this release
- ✅ Fix macOS security issues automatically
- ✅ Install to the right location for your platform
- ✅ No prerequisites required - just works!
📦 Manual Download
Alternatively, choose the file for your platform:
🪟 Windows
*.msi- Windows Installer
🍎 macOS
*_aarch64.dmg- Apple Silicon (M1/M2/M3/M4)*_x64.dmg- Intel Macs
🐧 Linux
*.AppImage- Universal Linux binary*.deb- Debian/Ubuntu package
macOS Note: If you see "app is damaged", it's normal for unsigned apps. Use the installer above or run:
xattr -cr S3Deck.app
💡 Need Help?
Full Changelog: https://github.com/ODudek/s3deck/blob/main/CHANGELOG.md
S3 Deck v0.2.0
🚀 S3 Deck v0.2.0 - 2024-08-25
✨ Added
- Automatic release notes generation from changelog
- Improved CI/CD workflow with Rust-only backend
- Enhanced drag & drop functionality with Tauri native file handling
- Improved upload progress tracking and error reporting
- Better file size validation and formatting
- Debug mode toggle in settings for development
- File and folder rename functionality with smart content-type detection
- Support for changing file extensions during rename (automatically updates MIME type)
- Comprehensive filename validation with cross-platform compatibility
- Bulk folder renaming that preserves internal file structure
- Rename option in context menu for all objects
- Simplified notification messages showing only file/folder names instead of full paths
- Warning notification type with appropriate styling and icon
- Smart context menu positioning that automatically adjusts to viewport boundaries
- Intelligent menu placement (shows above when too close to bottom, left when too close to right)
- Global cursor pointer styles for all interactive elements
- Context menu margin safety zones to prevent edge clipping
🔄 Changed
- Migrated from Go backend to pure Rust/Tauri implementation
- Updated GitHub Actions workflows to remove Go dependencies
- Improved error handling and logging
- BREAKING: Upgraded to Tailwind CSS v4.1.12 with new configuration system
- Updated PostCSS configuration for Tailwind v4 compatibility
- Migrated CSS imports from
@tailwinddirectives to@import "tailwindcss" - Updated opacity syntax from
bg-opacity-*to new slash notation (bg-black/50)
🐛 Fixed
- Tauri drag & drop file handling
- Build process optimization
- Development environment startup scripts
- File drag & drop issues in desktop environment
- Upload progress reporting accuracy
- Memory usage optimization during file operations
- Cross-platform file path handling
- Dark mode theme switching with custom variant configuration
- Modal and sidebar overlay transparency issues
- CSS build process with Tailwind v4
- Button cursor pointer missing after Tailwind CSS v4 migration
- Context menu overflow issues when right-clicking near viewport edges
- Interactive elements not showing proper cursor on hover
- Context menu accessibility in constrained viewport areas
🗑️ Removed
- Go backend implementation and dependencies
- HTML drag & drop support (Tauri native only)
- Debug console.log statements from production code
- Legacy Tailwind v3 configuration and directives
🔒 Security
- Removed network-based communication in favor of secure IPC
- Enhanced credential storage security recommendations
🚀 Easy Installation
One-line installer for all platforms (Recommended):
# Install latest version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash
# Install this specific version
curl -fsSL https://raw.githubusercontent.com/ODudek/s3deck/main/install.sh | bash -s -- -v v0.2.0This installer will:
- ✅ Auto-detect your OS and architecture
- ✅ Download the correct binary from this release
- ✅ Fix macOS security issues automatically
- ✅ Install to the right location for your platform
- ✅ No prerequisites required - just works!
📦 Manual Download
Alternatively, choose the file for your platform:
🪟 Windows
*.msi- Windows Installer
🍎 macOS
*_aarch64.dmg- Apple Silicon (M1/M2/M3/M4)*_x64.dmg- Intel Macs
🐧 Linux
*.AppImage- Universal Linux binary*.deb- Debian/Ubuntu package
macOS Note: If you see "app is damaged", it's normal for unsigned apps. Use the installer above or run:
xattr -cr S3Deck.app
💡 Need Help?
Full Changelog: https://github.com/ODudek/s3deck/blob/main/CHANGELOG.md