audioplayer/ai/aesthetic.md
2026-04-29 06:57:46 +03:00

1.5 KiB

Aesthetic direction

Target: a ridiculous audio player from the early 2000s — the kind that shipped on a CD-ROM with an album. Think:

  • The Linkin Park Meteora player
  • Björk's Biophilia app (later, but same energy)
  • Custom Winamp skins from skins.com circa 2002
  • Limited-edition iPod-companion players

Visual cues

  • Chunky UI elements. Big buttons, big knobs, big sliders. No sleek minimalism.
  • Neon + metallic gradients. Electric blue, hot pink, lime, chrome silver. Glossy highlights on buttons.
  • Drop shadows, glows, bevels. Embrace the skeuomorphism.
  • Non-grid layouts. The play controls don't have to live in a tidy bottom bar — they can be a curved cluster off to the side.
  • Album art is huge. Artist photo as a backdrop with a darkened gradient over it.
  • Spectrum visualizer behind the now-playing screen, reacting to the audio FFT.
  • Custom shader effects — bloom, scanlines, chromatic aberration, plasma, whatever fits.
  • Cheesy fonts. Bold italic, maybe a script font for the artist name.

What to avoid

  • Spotify/Apple Music minimalism
  • Material Design / Fluent UI
  • Flat design
  • Anything that looks like it was designed in 2018+

Practical notes for the codebase

  • We get rect-based widgets from GetRect_LeftHanded, but we should freely draw on top of them with Simp.immediate_* and custom shaders for the album-skin aesthetic.
  • gfx/shaders.jai is where custom GLSL lives.
  • The visualizer is a fullscreen quad behind the UI sampling FFT bins from audio/analysis.jai.