Projects & files
A project is one folder with everything in it: the song, its 16 patterns, every sample and wavetable it uses, and the saved state of any plugins. Nothing is hidden away. You can see all of it in the Files app.
The Projects screen
- Projects are listed by when you last touched them, newest first, and the one that's open has a green tick. Tap one to load it and you land straight on the Perform screen.
- Every project has a colour square. Tap it to pick a colour from the palette, and it shows next to the project's name in the header. Changing the colour doesn't move the project in the list.
- + makes a new project at your current tempo. If New projects start with random sounds is on in Settings, every track of the new project gets a random preset from your library, the same kit in every pattern. Swipe a row for Delete, Rename or Duplicate. Duplicating copies the whole folder, samples included, so the copy owns its own files.
- Renaming a project renames its folder too.
- The first time you open the app, the bundled Factory project loads. It's a ready-to-play kit made entirely from factory content.
Autosave and undo
- Every edit saves a couple of seconds after you stop, and switching projects saves straight away. There's no save button to forget.
- Undo and redo cover the whole project: trigs, locks, patterns, track setups, pools, slices, FX settings, morphs, the song, even your MIDI bindings. Fifty steps, with quick runs of edits grouped into one. Things that don't save with the project (the DJ effects, app settings) aren't in it, and deleting a project can't be undone.
Sound presets
Presets belong to you rather than to a project, so they're there in every project. Save one from any track's sheet and load one from Browse Presets.
- A preset holds the device, its complete parameter set, the eight knob slots, both LFOs with their links and depths, and for a sampler preset the audio file itself with its slices. An AU preset holds the plugin and its state. A preset never touches the track's default note, velocity or gate. It's a sound, not a part.
- Preset audio is kept in a shared library, so loading a preset into another project imports its sample into that project's pool.
- Organise them with tags, picked from a list (kick, snare, bass, lead, pad
and friends, plus your own). Search matches names, sample names and tags, and
#termsearches tags only.
Exporting a song
Open the pattern sheet and tap EXPORT in the song editor's toolbar, next to REORDER. HeartBeat plays the song through the master bus in real time, every device, send, morph and master effect exactly as you'd hear it, and writes it out as a WAV, sample-accurate from the first beat to the end of the last row plus three seconds for the reverbs and releases to finish. Any silence at the start is trimmed. You can watch the progress as it renders, and when it's done it hands you the file to share. A copy also lands in Bounces/. If you dismiss the sheet partway through, the render stops and the partial file is deleted.
iCloud
With iCloud Drive turned on, HeartBeat's folder lives in iCloud Drive → HeartBeat, and your projects, presets and bindings follow you between devices. Files another device has uploaded appear as their downloads land. Without iCloud Drive the same folder sits under On My iPhone. The factory library is the one thing that stays local on each device, since it's a copy of what's in the app anyway.
Project files carry a schema version. If a newer HeartBeat wrote a project than the one trying to open it, it's refused with a clear message rather than half-read, so a phone that hasn't updated yet can't damage a newer file.
On disk
Everything is under HeartBeat in the Files app, in iCloud Drive or On My iPhone:
| Folder | Holds |
|---|---|
| Projects/<Name>/ | project.json, the project's samples, its Wavetables/ folder and Files/AU/ with the saved state of any hosted plugins. One portable unit you can copy out whole. |
| Presets/ | One JSON file per sound preset, plus the preset audio library (Samples/, Wavetables/). |
| Factory/ | The shared factory library (Samples/ by folder, Wavetables/). An exact mirror of what ships in the app, kept on the device outside iCloud, never copied into projects, and put right automatically if a file goes missing. Anything else left in here is removed on the next launch. |
| Bindings/ | Exported MIDI binding files. |
| Bounces/ | Exported songs and patterns, as WAV. |
- Sample references inside a project are relative to its folder, so renaming or copying a project never breaks them.
- Imports, samples and wavetables alike, are copied into the project folder. Deleting a pool slot leaves the file on disk for other projects.