NetComposer

Create

Write a Composition. Hear its chords. Take it to a Performer.

Everything happens in this page. Your work is kept in the page address (after #), so a refresh keeps it; nothing is uploaded or stored.

Write

Chords as symbols: Cm, Am7, Bb7sus4, F#dim7, Ebmaj9, A7alt, G/B. Any of the 420 in the full chord set.

Play

Loading the chord set…

speed 1.0×

A sketch of the harmony only, from the recorded chords at fullchords.musicmatter.art (CC BY-SA 4.0).

The link is this page's address: the Composition rides in it (after #), so nothing is stored anywhere.

Perform

A full-quality Performance, with the same chain as the kit (Rubber Band R3 time-stretch, Dragonfly Hall, true-peak mastering) and its record, will render right on this page soon.

Today: perform it with the Performer kit, pip install git+https://github.com/netcomposer-art/nc-performer, or hand the plan to an agent with SKILL.md.

Take it further

Download

The plan stub has the chords, their voicings and the sounds; a Performer or an agent fills in the rest. Schema.

Open a file

Open a composition.md: one made here, or a published one (ambient Cm, BWV 846).

With the Performer kit 0.2.0 (Python, ffmpeg)

pip install git+https://github.com/netcomposer-art/nc-performer
nc perform composition.md --stub -o out/    # no LLM
nc render --plan plan.json -o out/          # your own plan
nc perform composition.md -o out/           # any OpenAI-compatible LLM

The kit is open source (MIT): github.com/netcomposer-art/nc-performer. It needs Python 3.10+ and ffmpeg with the rubberband filter. The default reverb hack is Dragonfly Hall: add pip install pedalboard and Dragonfly Reverb (apt install dragonfly-reverb, or its VST3). Without them the kit uses its synthetic hall, and the record says which reverb ran.

With an agent

Grok, ChatGPT, Claude, others: give it the composition.md and the skill, SKILL.md (plain text: SKILL.txt). It writes plan.json, renders, writes the record. More on Agents start here.

Submit

Submissions go through issues on the site repository (or a pull request adding an entry to suppliers.json). This channel is proposed and may change. Issues.