PaintFE: Portable Cross-Platform Image Editor Built with Rust
Developer Kyle Jackson has released PaintFE — an open-source image editor for Windows and macOS. The project is built in Rust, packaged into a single executable with no dependencies. It supports layers, gradients, blend modes, GPU-accelerated filters, scripting via Rhai, and working with animated GIF/APNG. MIT license, repository on GitHub.
The toolkit includes text tools and advanced color palettes. Localization in 15 languages: English, German, French, Spanish, Portuguese, Italian, Russian, Polish, Turkish, Japanese, Belarusian.
Technical Implementation
PaintFE is built on Rust using Fe as a nod to iron (Fe in the periodic table). GPU acceleration for filters boosts performance when processing images. The Rhai scripting engine allows automating tasks without compilation.
Key features:
- Layers and blend modes: standard blending modes, similar to Photoshop.
- Gradients and filters: linear and radial gradients with GPU support.
- Animation: import/export GIF and APNG with timeline.
- Scripting: Rhai for custom tools and batch processing.
- Portability: single EXE/DMG with no runtime dependencies.
GitHub Copilot was used for boilerplate code and Rust syntax. All snippets underwent manual review, testing, and auditing. Architecture and UI/UX were designed by humans.
Advantages for Developers
For mid-level and senior developers, PaintFE serves as an example of cross-platform GUI in Rust. The project demonstrates integration of GPU (likely wgpu or similar), scripting, and asset pipeline into a portable binary.
Extension possibilities:
- Plugins via Rhai scripts.
- Custom shaders for filters.
- Integration with external formats (HEIC, WebP).
Localization is implemented without external libraries, simplifying deployment. Executable size is minimized through static linking.
What’s Important
- Portability: single file for Windows/macOS, no installation or dependencies.
- GPU filters: hardware acceleration for resource-intensive operations.
- Rhai scripting: dynamic automation without recompilation.
- Multilingual support: 15 localizations out of the box.
- Openness: MIT license, full source code on GitHub.
The project is ideal for prototyping image processing tools. Rust ensures memory safety when working with pixel buffers and GPU resources.
— Editorial Team
No comments yet.