All projects

Independent project · Native iOS

Islecho

An island you can play.

Islecho is an interactive music world designed and developed by Shuran Yang. On an evolving island, fish, flowers, and fireflies each contribute a different sound, creating a soundscape that changes with the environment. Players can tap a rhythm and hear the island respond as an ensemble, turning listening into a form of composition.

Islecho in action · original application soundThe on-screen message marks the start of a 127 BPM ensemble.

A world you can play.

Let it evolve

Fish, flowers, and fireflies create different voices. Daylight, wind, and changing weather shape the island and its soundscape.

Give it a rhythm

A short sequence of rhythmic taps becomes a musical motif. The system carries that motif into a temporary ensemble, adding variations and harmony before returning to the natural soundscape.

Keep what emerges

Save a snapshot to return to a world, or record its stereo output as a WAV file. The recording captures the application itself, not the microphone.

An angled view of the Islecho island showing wireframe rocks, flowers, fallen logs, and creatures over the water
An island of distinct voices: fish, flowers, and fireflies. Actual application screenshot.

Inside the build

Sunlight becomes timbre.

The environment does more than change the scenery. This function maps sunlight to the flower voice's filter cutoff: brighter conditions open the filter, while less light makes the sound more muted.

The mapping is exponential, from 320 to 6,500 Hz. A separate update layer smooths changes before they reach the sound.

EcologySoundParameters.swiftSwift
static func resolve(kind: EcologyKind, environment: EnvironmentState) -> Self {
    switch kind {
    case .plant:
        let sunlight = min(1, max(0, environment.sunlight))
        return Self(cutoffHz: Float(320 * pow(6500.0 / 320, sunlight)))
    case .fish, .firefly: return Self(cutoffHz: 0)
    }
}

One experience, three systems.

Swift manages gestures and the evolving world, Metal renders the three-dimensional scene, and a C++ audio engine synthesizes and schedules sound. Keeping the audio clock independent of the display lets musical timing follow sound rather than the screen's refresh rate.

The interaction connects these systems: touch supplies notes and rhythm, ecological events suggest sounds, and actual audio onsets drive the corresponding visual gestures.

Designed and developed by Shuran.

Shuran independently created Islecho, from its concept and interaction design to sound design and software implementation. Built with Swift, Metal, and a C++ audio engine, the project brings together real-time graphics, procedural sound, and musical interaction. It explores how software can make music feel like a place to discover.

Roadmap

Directions to explore next.

Clearer interaction

Refine the visual cues for tapping and ensemble play, helping first-time players understand how their gestures shape the music without interrupting exploration.

A personal sound palette

Explore importing short sound recordings and assigning them to the island's creatures, so players can build a world from sounds they have collected or made.

Testing through play

Run playtests with musicians and people without musical training. Use their feedback, alongside device measurements, to improve responsiveness, sound balance, and performance during longer sessions.

Selected fallen-log scenery is adapted from Poly Haven's Dead Tree Trunk 02, by Jenelle van Heerden and Rico Cilliers (CC0).

The Bowel Preparation Assistant mini-program: intake form and a generated care planNext projectBowel Preparation AssistantExplore the project
All projects