← Projects
BryanYung
First Light

Teaching firework chemistry through interactive 3D visualizations.

Timeline

2025

Role

Solo Developer

Tools

Swift, SceneKit, Swift Playground

For Apple's WWDC Swift Student Challenge, I built an interactive app to teach firework chemistry. The project was officially recognized by Apple.

First Light tutorial interface

Interactive tutorial system built with SceneKit. Materials slide in and out on a 3D table using SCNAction animations, teaching users which chemical elements produce specific colors.

Firework creation interface

Ingredient selection interface for designing custom fireworks. Built with UIKit overlays on top of the SceneKit scene. Each chemical element is represented as a draggable 3D node with physics properties. A big challenge was implementing smooth drag-and-drop interactions between UIKit and SceneKit coordinate systems.

Complete workflow from ingredient selection to firework launch. The 3D scene uses SceneKit's particle systems for realistic firework explosions, with custom shaders for color mixing based on selected chemicals. Physics simulation handles the launch trajectory and explosion dynamics. All running in real-time within Swift Playground's sandbox constraints.

Overall, I'm very proud of how First Light turned out. Working within Swift Playground's limitations pushed me to be creative with SceneKit and UIKit to ensure a performant application even while maintaining great 3D visual quality.