Part VI: Interactive Applications¶

This work is licensed under a Creative Commons Attribution 4.0 International License.
This section provides access to interactive tools and demonstrations for exploring fractal mathematics and self-affine patterns. The applications are implemented in two frameworks:
- React Applications: High-performance web applications with GPU-accelerated visualization
- Streamlit Applications: Python-based interactive tools for scientific exploration
Available Tools¶
Fractal Visualizations¶
| Application | Framework | Description |
|---|---|---|
| Mandelbrot Explorer | React | Interactive Mandelbrot set visualization with zoom and parameter controls |
| Julia Set Explorer | React | Real-time Julia set rendering with adjustable complex parameter |
| DLA Simulator | React | Diffusion Limited Aggregation growth simulation |
| Barnsley Fern | React | IFS-based fern generation |
Tree and Branching Architectures¶
| Application | Framework | Description |
|---|---|---|
| Pythagoras Tree | React | Self-similar tree with adjustable branching angle |
| L-System Trees | React | Lindenmayer system-based tree generation |
| 3D Tree/Root Visualization | React | Three-dimensional branching network visualization |
3D Simulation & Rendering¶
| Application | Framework | Description |
|---|---|---|
| Blender DLA | Blender/Python | 3D DLA simulation with Geometry Nodes and Cycles rendering |
Analysis Tools¶
| Application | Framework | Description |
|---|---|---|
| Differential Box-Counting | Python | Calculate fractal dimensions of grayscale images |
| Noise Generators | React | 1/f noise and fractional Brownian motion |
Mathematical Visualizations¶
| Application | Framework | Description |
|---|---|---|
| Riemann Zeta 2D | React | 2D visualization of the Riemann zeta function |
| Riemann Zeta 3D | React | 3D surface plot of zeta function magnitude |
Quick Start¶
Running React Applications¶
The React applications are deployed and accessible online:
Or run locally:
cd react
npm ci
npm start
Running Streamlit Applications¶
cd apps
pip install -r requirements.txt
streamlit run mandelbrot.py
Technical Requirements¶
For React Applications¶
- Modern web browser with WebGL support
- JavaScript enabled
- Recommended: Chrome, Firefox, or Safari
For Python Applications¶
- Python 3.8+
- NumPy, SciPy, Matplotlib, Plotly
- Streamlit (for interactive apps)
- See Installation Guide for full setup
Application Architecture¶
graph TB
subgraph React["React Applications"]
R1[Mandelbrot/Julia] --> WebGL
R2[DLA/Trees] --> Canvas2D
R3[Zeta Functions] --> Plotly
end
subgraph Python["Python Applications"]
P1[Streamlit Apps] --> Matplotlib
P1 --> Plotly
P2[Jupyter Notebooks] --> NumPy
end
subgraph Blender["Blender Applications"]
B1[DLA Simulation] --> GeometryNodes
B2[Cycles Rendering] --> GPU2[GPU Rendering]
end
WebGL --> GPU[GPU Acceleration]
Canvas2D --> CPU[CPU Rendering]
GeometryNodes --> GPU2
Contributing¶
To add new applications or improve existing ones:
- React apps: Add new pages to
react/src/pages/ - Streamlit apps: Add new
.pyfiles toapps/ - Follow the existing code patterns for consistency
- Include documentation in this section