This project consists in an app built with Rust + Tauri + React/Typescript, that provides a graphical user interface to manipulate cwebp operations.
The idea is to make it even easier to convert an image format to .webp, with the already extraordinary tool that is the cwebp.
Planned features include letting the user change the dimensions, quality, and other available options of cwebp, and applying those settings to multiple images at once.
⚠️ This project is in active development. The UI is minimal and functionality is evolving.
Contributions and feedback are welcome!
- Select one or more images (locally)
- The app generates corresponding
.webpoutput paths automatically. - Click "Convert to WebP" to convert all selected images.
- Conversion progress is shown in the app's console/log output.
-
Node + npm: https://nodejs.org/
-
Tauri: Platform-specific dependencies, see at https://tauri.app/start/prerequisites/
-
cwebp binary: bundled with the app as a Tauri sidecar. If you prefer, you can manually download libwebp at https://developers.google.com/speed/webp/download, extract the cwebp binary, moving it to
./src-tauri/binand rename it to match what Tauri expects for your platform (e.g. cwebp.exe-x86_64-pc-windows-msvc on Windows).
# Go to the project root
cd imgFormatter
# Install dependencies (npm)
npm install
# Run in dev mode
npm run tauri dev
# OR build the executable (will be in src-tauri/target/release/bundle/)
npm run tauri build
The cwebp executable bundled in this project is part of the libwebp library, developed by the WebM Project.
cwebp is licensed under the BSD 3-Clause License. The full license text is included in the cwebp-LICENSE file bundled alongside the executable.
This project is licensed under MIT License. See LICENSE for more information.