DanaProcessing 1.0 is here · MIDI learn, Beat(), the microphone and performance mode

Draw, play and perform — in C#.

The Processing way of sketching, with real 3D, its own live-coding sound engine and an IDE built for the stage. Free and open source.

Other platforms
Fireflies in 60 lines of C# · build it in the tutorial

Pick where to start.

Six short ways in, each leading into the full reference. 2D, 3D and sound sit side by side — nothing is hidden behind a mode.

  • Learn the basics

    One sketch of fireflies, built in six steps: canvas, color, animation, classes, input, sound.

    30 min · 6 steps

  • Draw in 2D

    Color, shapes, text, transforms, images and pixels — Processing's whole vocabulary.

    Fill() · Rect() · Text()

  • Go 3D

    Pass Renderer3D to Size() and get boxes, cameras, lights, materials and shaders.

    Box() · Camera() · Lights()

  • Make sound

    Live loops that stay in time while you edit, synths, samples, and visuals that hear them.

    [LiveLoop] · Play() · Sample()

  • Play live

    Knobs with MIDI learn, visuals on the beat, the room's microphone, code on the projector.

    MidiCC() · Beat() · F11

  • Generative art & print

    Seeds you control, a sheet of variations, poster PNGs and SVG for pen plotters.

    Seed · Ctrl+Shift+V · Ctrl+Shift+E

All 38 topics and the A–Z index · Coming from Processing or p5.js

An IDE that keeps playing.

The sketch and its music keep going while you type. One switch runs and stops them, and tells you how long they've been live. F11 puts the visuals on the projector with your code floating on top.

  • Ctrl+Enter Hot reload, state kept
  • Shift+F5 Stop the sketch and its sound
  • F3 Why is it slow? fps, Draw() time, memory

Everything the IDE does

The IDE's Run switch, live and stopped
DanaProcessing■ Stop · 1:42
Stopped, the same switch reads▶ Run

Keep Dana growing.

DanaProcessing is free and open source, built in spare time. A donation buys more time for new features, examples and fixes.

PayPal isn't available where I live, so donations are received on my behalf by a trusted collaborator, Carlos Fernandez.