User Manual
Complete reference for NewProject — loop-based composition, live arrangement, VST hosting, and visual customisation.
// Overview
NewProject is a desktop music production application built on the JUCE framework. It combines a pattern-based arranger with a full mixer, VST instrument hosting, a sampler, and a highly customisable visual theme system.
The application is designed for loop-based composition and live arrangement — each section (Intro, Main, Fill, End, and four Variations) can be triggered independently, making it suitable for both studio work and live performance.
// Interface Layout
| Zone | Description |
|---|---|
| Top Bar | Transport, arrangement mode buttons, variation buttons, tempo, transpose, and utilities. |
| Melody Column | Melody volume fader, FX chain, load melody, and piano roll access. |
| Chord Column | Chord volume fader and chord FX chain. |
| Instrument Columns | Up to 4 instrument channels — fader, pan, mute/solo, and FX sends each. |
| Drum Panel | Step sequencer grid with per-channel strips (volume, pan, mute, solo, FX). |
| Bass Grid | Step sequencer for bass patterns. |
| Sampler Panel | Waveform display, slicing, keyboard mapping, loop playback. |
| Status Bar | Shows current playback state and active section. |
// Transport Controls
| Button | Action |
|---|---|
| ▶ Play | Starts playback of the current section in a continuous loop. |
| ■ Stop | Stops playback immediately. |
| Metronome | Toggles the click track on/off during playback. |
// Arrangement Modes
Each section stores its own independent pattern data for melody, chords, bass, and drums.
| Button | Description |
|---|---|
| Intro | Intro section — used at the start of a performance. |
| Main | Primary loop — the core groove of the track. |
| Fill | Short transitional fill, typically 1–2 bars. |
| Fill 2 | Second fill variant for added performance variety. |
| End | Outro / ending section. |
| Vari 1–4 | Four free variation slots for breakdowns, B-sections, or alternative grooves. |
// Tempo & Transpose
Tempo
The Tempo slider in the top bar controls global BPM. Drag left/right to adjust.
Global Transpose
Shifts all melodic content (melody, chords, bass) up or down in semitones. Use the ▲ / ▼ buttons for single-semitone steps — useful for real-time key changes without re-editing patterns.
Split
The Split slider divides the keyboard between melody and chord input, allowing both hands to play different parts simultaneously from one MIDI controller.
// Melody Editor
Loading a Melody
Click Load Melody to import a MIDI file or a previously saved melody pattern.
Opening the Editor
Click Open Melody Editor to open the piano roll for the melody track.
Toggles
| Toggle | Description |
|---|---|
| Hear L | Routes the left-hand keyboard split to the melody instrument for real-time auditioning. |
| Chord Hold | Sustains the last chord until a new one is triggered. |
| Chord Track | Locks chord playback to follow the sequenced pattern rather than live keyboard input. |
// Chord Editor
The chord system plays harmonic backing automatically or via MIDI input. The chord column has its own volume fader and FX chain. The Chord Label display shows the currently active chord name during playback.
// Bass Grid
A step sequencer for pitched bass-line patterns. Activate steps by clicking cells. Right-click a step for pitch and velocity options.
| Button | Action |
|---|---|
| Copy Bass | Copies the current bass pattern. |
| Paste Bass | Pastes a copied bass pattern into the current section. |
// Drum Grid
A multi-channel step sequencer. Each row is a drum channel. Each channel has its own volume dial, pan, mute, solo, and FX slots. Channel name buttons flash on each hit during playback as a live VU indicator.
| Button | Action |
|---|---|
| Copy Drums | Copies the entire drum pattern for the current section. |
| Paste Drums | Pastes a copied drum pattern. |
| Clear Drums | Erases all steps in the current drum pattern. |
// Piano Roll
Note-level editing for melody and drum patterns. Click ↗ to expand into piano roll mode.
| Action | Result |
|---|---|
| Left-click empty cell | Add a note |
| Left-click existing note | Select / move note |
| Right-click note | Delete note |
| Chord Lock | Constrains notes to active chord scale degrees |
// Channel Mixer
| Control | Description |
|---|---|
| Fader | Vertical linear fader — drag to adjust channel volume (0 to +150%). |
| Pan Strip | Horizontal dual-point pan below the fader. Left dot = L pan, right dot = R pan. Double-click a dot to reset to centre. |
| M Mute | Silences the channel. Lit when active. |
| S Solo | Solos the channel, muting all others. |
| Stereo Meter | Narrow vertical bar showing live L/R levels — green → yellow → red. |
Track Name Button
Shows the loaded instrument name. Left-click to select the track. Right-click for the load / clear instrument menu. The small L and C corner buttons provide quick access to Load and Clear.
// FX Slots (Per Channel)
Each channel has 4 VST effect insert slots.
- Click Load on the desired FX slot to browse for a VST plugin.
- Click GUI to open the plugin's own editor window.
- Toggle B (Bypass) to disable the effect without unloading it.
The FX send dials below the fader route signal to the Global FX buses.
// Global FX Bus
Four global buses for parallel processing (reverb, delay, compression, etc.). Any channel can send to any bus via the FX send dials.
| Button | Action |
|---|---|
| Load | Load a VST plugin into this bus. |
| E | Open the plugin editor GUI. |
| On | Enable / disable the entire bus. |
// VST Instruments
- Right-click the track name button (or click the small L button).
- Select Load VST... and browse to your
.dll/.vst3file. - Click GUI to open the plugin editor.
Choose Load Sample... instead to load an audio file as a one-shot instrument. Use Clear instrument to remove it.
Solo / Poly Mode
The Solo / Poly button toggles between monophonic and polyphonic MIDI output for that channel.
// Sampler
The built-in sampler provides waveform playback, slicing, and keyboard mapping.
Loading Audio
Click the load button in the sampler panel to import a WAV or AIFF file. The waveform is displayed and playable immediately.
Loop Playback
Use the range start/end markers in the waveform display to define the loop region.
Slicing
Enable slice mode to detect transients and map each slice to a key on the on-screen keyboard.
Sending Slices
| Button | Action |
|---|---|
| Send to Drum | Sends a selected slice to a drum channel for step-sequenced playback. |
| Send to Multi | Distributes all slices across instrument channels. |
// Theme Editor
Open via the Theme button. Every colour in the interface is editable. Changes apply to the live UI instantly.
- Select a Group (e.g. "Fader / Dial Track", "Mute Button").
- If the group has states, select the Part (Off Bg, On Bg, Off Text, On Text).
- Use the colour picker or type a hex code into the hex field. Click the field to select all for easy copy/paste.
Save & Load
| Button | Action |
|---|---|
| Save As... | Saves theme to a .json file. Does not change the startup default. |
| Set As Default | Sets current theme as the startup default immediately — no file dialog. |
| Load... | Loads a previously saved .json theme file. |
| Reset Grey | Reverts to the built-in grey default. |
%AppData%\ArrangerApp\theme.json — The editor window size is also remembered between sessions.
// Theme Presets
The Presets dropdown applies a full theme instantly as a starting point for customisation.
// Click Edit Mode
Identify and edit any element's colour by clicking directly on it — no need to search the group dropdown.
- Open the Theme Editor and click Click Edit.
- The main window gets a blue tint and the cursor becomes a crosshair.
- Hover over any element — a highlight border and group name badge appear.
- Click the element. The Theme Editor jumps to that group and comes to the front.
- Press ESC to cancel at any time.
// Projects
Use Save and Load in the top bar to save and restore projects. All patterns, instrument assignments, mixer settings, and FX chains are stored in the project file.
// MIDI Learn
Most controls support MIDI Learn — map any hardware knob, fader, or button to any on-screen parameter.
- Right-click the control you want to map.
- Select MIDI Learn from the context menu.
- Move the desired knob or button on your MIDI controller.
- The mapping is made automatically and persists with the project.
Right-click a mapped control and choose Clear MIDI Learn to remove the assignment.