Image-effects
A browser-based image processing tool built with Rust and compiled to WebAssembly. Users can upload images and apply real-time filters like brightness, contrast, grayscale, and inversion directly in the browser.

Key Features
- Real-time image manipulation using WebAssembly
- Custom filter pipeline built in Rust
- Client-side processing without server interaction
Tech Stack
Rust
WebAssembly
JavaScript
Challenge
Bridging communication between Rust logic and frontend JavaScript
Solution
Used `wasm-bindgen` and `wasm-pack` to expose Rust functions to JavaScript, enabling seamless interop for applying image filters in real time
Challenge
Optimizing performance for large image files processed entirely in the browser
Solution
Minimized memory copying between Rust and JS and used efficient image buffer manipulation in Rust for faster processing
Challenge
Creating an intuitive UI for applying and previewing effects
Solution
Designed a lightweight frontend using vanilla JavaScript and CSS with immediate visual feedback when toggling filters, making it user-friendly despite its low-level backend
Role: Solo Developer