This is a fast, privacy-focused web application built with HTML, Bootstrap, and Vanilla JavaScript that allows users to resize and compress multiple images directly in their browser without uploading any files to a server.
- Client-Side Processing: All image manipulation happens locally, ensuring maximum privacy and instant processing speeds.
- Bulk Management: Supports drag-and-drop of up to 1,000 files per session.
- Broad Format Support: Handles popular image formats: JPG, JPEG, PNG, and WEBP.
- Custom Quality Control: Users can set a target Max Megapixel (Mpx) size and define the output JPEG Quality (%).
- Quick Convert Presets: Includes dedicated buttons for common use cases, such as optimizing images for Facebook & Instagram (2048px).
- Performance Safeguards: Implements a visual warning system for large file batches (over 100 files) to prevent browser unresponsiveness.
- State Protection: Features a prompt warning the user before they close or reload the page if files are currently selected.
| Component | Technology | Role |
|---|---|---|
| Frontend | HTML5, CSS3 | Structure and Styling |
| Framework | Bootstrap 5.x | Responsive Layout and UI Components |
| Core Logic | Vanilla JavaScript (ES6+) | Image resizing using the Canvas API and file handling |
| File Upload | Dropzone.js | Handling drag-and-drop and file queue management |
Feel free to fork this repository, open issues, or submit pull requests if you have suggestions for improvements or bug fixes.
This project is open-source and available under the MIT License.
