Skip to content

Setlists — .setlist.jsong

Status: draft. Concrete reference content + structural placeholders; flesh out the prose + screenshots when ready.

Purpose

A .setlist.jsong file is one setlist's running order, saved as plain JSON. Use it to archive a setlist for a specific gig, share a setlist with a bandmate so they can build the same show, or post a setlist as a reference for a tribute set.

What's in the file

Top-level fieldContains
format"jsong-setlist" — the format identifier.
version2 — current version.
name, descriptionSetlist metadata.
metaProvenance block — source (app + version), created_at.
entriesOrdered array of entry objects — the running order.
extensionsReserved object for third-party data (empty on VL Studio export).

entries array

Each entry is an object with:

Entry fieldContains
positionOrder in the setlist (zero-indexed).
entry_typeOne of "song", "preset", or "talk".
song_nameFor song entries — name of the referenced song. Null otherwise.
preset_name, preset_slotFor preset entries (the preset to load), or talk entries with a per-entry override. Null when the entry uses the global TALK slot.
notesFree-form performance context.

How talk-breaks are exported

The export uses the preset_name / preset_slot fields to capture a talk-break's per-entry override, exactly the same way a preset entry references its preset. If the talk-break uses the global TALK slot (Settings → TALK Preset), preset_name and preset_slot are null and the entry falls back to the destination's global setting on import.

How to export

Setlists page → open a setlist → Export action → choose a save location. VL Studio writes a file named after the setlist (e.g., Saturday at the Cafe.setlist.jsong).

How to import

Standalone import is not yet implemented

There is currently no standalone .setlist.jsong import in VL Studio. The format exports, but the application has no UI or backend command for importing one of these files directly.

To restore a setlist on another machine, use a full backup instead — backups include setlists with their entries and round-trip cleanly.

A future release will add standalone setlist import. Until then, treat .setlist.jsong as an archive / share-with-a-bandmate format whose ingest path is "via full backup," and use the file's JSON contents as a reference for manually re-building the setlist.

What's reference-only, not embedded

A setlist file references songs and presets by name and slot, not by embedding them. The file itself does not contain the songs or presets it lists — only the running order, the entry types, and the lookup hints.

For the file to be useful on another machine when import lands, the destination library will need to already contain the referenced songs and presets — easiest done by either importing the songs first (one .jsong per song; see Songs format) or restoring from a full backup.

See also

Software for working musicians · St. Petersburg, FL