---
title: "Uzumaki"
description: "Cross-platform spiral visualization app for Web, iOS, iPadOS, macOS, and watchOS. Generate mesmerizing animated spirals from ten mathematical algorithms with real-time customization."
impact: "Interactive mathematical art across six platforms from shared algorithms"
github_url: "https://github.com/cameronrye/uzumaki"
demo_url: "https://uzumaki.app"
technologies: ["React 19", "TypeScript", "Swift 6", "SwiftUI", "Canvas API", "Web Workers", "PWA", "SIMD"]
featured: true
order: 1
architecture: "flowchart LR\n    subgraph Web[\"Web Platform\"]\n        A[React 19]\n        B[Canvas API]\n        C[Web Workers]\n    end\n    subgraph Apple[\"Apple Platforms\"]\n        D[SwiftUI]\n        E[Canvas]\n        F[SIMD]\n    end\n    subgraph Core[\"Shared Algorithms\"]\n        G[Spiral Math]\n    end\n    subgraph Deploy[\"Deployment\"]\n        H[iOS]\n        I[iPadOS]\n        J[macOS]\n        K[watchOS]\n        L[PWA]\n    end\n    A --> B\n    B --> C\n    C --> G\n    D --> E\n    E --> F\n    F --> G\n    G --> H\n    G --> I\n    G --> J\n    G --> K\n    G --> L\n"
problem: "Mathematical spirals appear throughout nature and art, but experiencing their beauty requires either specialized software or deep mathematical knowledge. Existing spiral generators are either too simplistic with limited algorithms, or too complex requiring extensive parameter tuning. None offer a truly cross-platform experience from web browser to wearable device."
solution: "Built a unified spiral visualization platform spanning five Apple platforms plus the web. Ten spiral algorithms from Archimedean to Curlicue render with consistent behavior across all platforms. Web Workers with TypedArrays power smooth 60fps animations on the web, while SIMD optimization handles the same workload on Apple devices. Shareable URLs encode spiral configurations for instant sharing."
results: ["Ten mathematically accurate spiral algorithms", "Six platforms: Web, iOS, iPadOS, macOS, watchOS, and PWA", "60fps animation with Web Worker parallelization", "Shareable configuration URLs for any spiral state", "iOS 26 Liquid Glass design preparation", "watchOS complications for glanceable spiral art"]
metrics: [{"label":"Spiral Types","value":"10"}, {"label":"Platforms","value":"6"}, {"label":"Color Presets","value":"10"}, {"label":"Animation","value":"60fps"}]
canonical_url: https://rye.dev/projects/uzumaki/
---

import UzumakiDemo from '../../components/demos/UzumakiDemo.astro';

Uzumaki is an interactive spiral visualization app that renders ten mathematical spiral algorithms across web and Apple platforms. From the elegant Fibonacci golden spiral to the chaotic Uzumaki pattern, each algorithm produces mesmerizing animated artwork.

<div class="my-8 p-6 bg-white/60 dark:bg-gray-800/60 backdrop-blur-sm rounded-xl border border-gray-200/50 dark:border-gray-700/50">
  <UzumakiDemo />
</div>

## Spiral Algorithms

Each spiral follows a specific mathematical formula in polar coordinates:

| Spiral | Formula | Natural Examples |
|--------|---------|------------------|
| Fibonacci | r = a * phi^(2*theta/PI) | Nautilus shells, galaxies |
| Vogel | theta = n * 137.5 deg | Sunflower seeds, pinecones |
| Archimedean | r = a + b * theta | Watch springs, coiled rope |
| Fermat | r = a * sqrt(theta) | Optical lenses |
| Logarithmic | r = a * e^(b*theta) | Hurricane formations |
| Curlicue | phi = 2*PI*phi*n^2 | Fractal art |

## Technical Implementation

The web app uses Web Workers with TypedArrays for parallel spiral generation:

```typescript
function generateSpiralTyped(params: SpiralParams): TypedSpiralPoints {
  const points = createTypedPoints(numSteps);
  const rotation = time * spinRate;

  for (let i = 0; i < numSteps; i++) {
    const theta = i * stepSize + rotation;
    const r = calculateRadius(i * stepSize, params);
    setPoint(points, i, r * Math.cos(theta), r * Math.sin(theta));
  }
  return points;
}
```

The Swift implementation uses SIMD for vectorized math operations, achieving the same 60fps performance on Apple devices.

## Platform Features

- **Web/PWA**: Shareable URLs, keyboard shortcuts, PNG export
- **iOS/iPadOS**: Pinch-to-zoom, pan gestures, full-screen mode
- **macOS**: Menu bar integration, keyboard shortcuts
- **watchOS**: Digital Crown zoom, swipe navigation, complications