gitwtfhub

wtf is metal-experiments?

maximbilan/metal-experiments — explained in plain English

Analysis updated 2026-05-18

1MetalAudience · developerComplexity · 2/5Setup · moderate

TL;DR

A collection of self-contained iOS visual effects built with Metal shaders and SwiftUI, one effect per folder.

Mindmap

mindmap
  root((metal-experiments))
    What it does
      Self contained iOS effects
      One effect per folder
      Touch reactive shaders
    Tech stack
      Metal
      SwiftUI
      Xcode
    Effects
      Singularity
      Water
      Martian Sand
      Snow
      Night Sky
    Use cases
      Reuse a single effect
      Study shader code
      Run standalone demos
    Audience
      iOS developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Drop a single visual effect, like the Water or Snow shader, into your own iOS app.

REASON 2

Study Metal shader code for building custom touch-reactive animations.

REASON 3

Run a standalone demo of each effect in the iOS simulator using Xcode.

REASON 4

Use the Singularity or Night Sky effect as a splash screen or background in an app.

What's in the stack?

MetalSwiftUISwiftXcode

How it stacks up

maximbilan/metal-experimentserikkaum/maxsimradiofun/bottomgradientshader
Stars11723
LanguageMetalMetalMetal
Setup difficultymoderatemoderateeasy
Complexity2/54/52/5
Audiencedeveloperresearcherdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires Xcode, xcodegen, and iOS 17 or newer to run the shader effects.

Wtf does this do

This is a small collection of visual effects for iOS apps, built with Apple's graphics technology called Metal along with SwiftUI, the standard framework for building iOS interfaces. Each effect is a self-contained folder with its own description, a preview picture, a short video, a setup file, and the actual effect code, so someone can pick a single effect and drop just that folder into their own project without needing the rest. The README lists five effects included so far. Singularity is a swirling black hole style animation that responds to dragging, making it look like spacetime is bending. Water shows a sunlit pool with waves that bend a tiled floor underneath, light patterns dancing on the surface, falling raindrops, and ripples that spread out when you touch the screen. Martian Sand shows a desert dune scene with sunlight raking across rippled sand, blowing dust, and a small dust devil that reacts to touch. Snow shows a nighttime winter scene with a moon, layers of falling snow drifting at different depths, a snowbank, and a burst of snow where you touch. Night Sky shows a colorful deep space scene with a tilted view of the Milky Way, layered twinkling stars, occasional shooting stars, and a glow effect where you touch the screen. Every one of these is built from a single shader effect and requires iOS 17 or newer to run. To try any of the effects yourself, you install a tool called xcodegen, go into the folder for the effect you want, generate an Xcode project from it, and open that project to run it on a simulator or device. This is aimed at developers who want ready-made visual effects they can study or reuse, rather than a full application meant for end users. The README does not mention a license.

Yoink these prompts

Prompt 1
Show me how to add the Water effect from metal-experiments into my SwiftUI app.
Prompt 2
Explain how the Singularity shader creates its swirling black hole effect.
Prompt 3
Help me set up xcodegen to run the Snow effect demo in the iOS simulator.
Prompt 4
Walk me through the folder structure so I can add a new effect of my own.

Frequently asked questions

wtf is metal-experiments?

A collection of self-contained iOS visual effects built with Metal shaders and SwiftUI, one effect per folder.

What language is metal-experiments written in?

Mainly Metal. The stack also includes Metal, SwiftUI, Swift.

How hard is metal-experiments to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is metal-experiments for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.