A high-performance fractal renderer built in Rust with an interactive GUI for exploring the beautiful world of mathematical fractals including the Mandelbrot set, Julia sets, and more.
- Real-time Fractal Rendering: Smooth, interactive exploration of fractals
- Multiple Fractal Types:
- Mandelbrot Set
- Julia Sets (with customizable parameters)
- Burning Ship
- Newton's Fractal
- Tricorn (Mandelbar)
- Interactive GUI:
- Zoom and pan with mouse controls
- Real-time parameter adjustment
- Color palette customization
- High Performance: Multi-threaded rendering
- Precision Control: Adjustable precision between float32, float64 and float128
- Rust Compiler (Install via Rustup)
- Cargo Package Manager (Installed with Rust)
git clone https://github.com/Maxime-Cllt/Fractals-rs.gitcargo run --releaseTo enable float128 features :
cargo run --release --features f128Pre-built binaries are available for each release in two variants:
- File naming:
Fractals-rs-{platform} - Features: f32 and f64 precision modes
- Performance: Faster rendering, smaller file size
- Use case: General fractal exploration with excellent quality
- Recommended for: Most users
- File naming:
Fractals-rs-{platform}-f128 - Features: f32, f64, and f128 (128-bit decimal) precision modes
- Performance: Slower rendering, larger file size
- Use case: Extreme zoom levels (beyond 10^15) requiring maximum precision
- Recommended for: Advanced users, deep zoom enthusiasts, scientific visualization
- Standard: Perfect for 99% of use cases. Supports zooms up to 10^15 with excellent quality.
- F128: Only needed for extreme deep zooms beyond standard floating-point limits. Provides arbitrary precision at the cost of performance.
The release artifacts follow this naming convention:
- Windows x64:
Fractals-rs-x86_64-pc-windows-msvc.exe(standard) /Fractals-rs-x86_64-pc-windows-msvc-f128.exe(f128) - Windows ARM64:
Fractals-rs-aarch64-pc-windows-msvc.exe(standard) /Fractals-rs-aarch64-pc-windows-msvc-f128.exe(f128) - macOS Intel:
Fractals-rs-x86_64-apple-darwin(standard) /Fractals-rs-x86_64-apple-darwin-f128(f128) - macOS Apple Silicon:
Fractals-rs-aarch64-apple-darwin(standard) /Fractals-rs-aarch64-apple-darwin-f128(f128)
To run unit tests, use the following command:
cargo testBenchmarks use the criterion crate for performance testing. To run benchmarks, use:
cargo benchContributions are welcome! To contribute:
- Fork the Repository
- Create a Feature Branch:
git checkout -b feature/your-feature-name
- Benoit Mandelbrot for his groundbreaking work on fractal geometry
- The Fractal Geometry of Nature for inspiration







