goosegrid
goosegrid
goosegrid is a MIDI sequencer that allows you to build looping parts quickly using a grid system.
Interface
The interface consists of a grid and a number of toolbars. The grid can be interacted with using a mouse, keyboard, or MIDI controller. Grids contain nodes (and other grids), allowing for deeply nested patterns.
Grids
Grids are collections of notes and they can be nested inside of other grids. Grids can be nested anywhere. Type '#' in a cell to place a grid, and then double click or press enter on that cell to begin editing the sequences within. These grids will always contain an 'input', which is the start of the main sequence. When this grid cell is hit, it will play through this main sequence, and will return to it's parent sequence when it is finished.
Notes
Notes can be placed by selecting a cell and typing a note name. By holding the shift key while typing, a note can be made sharp (c = C, C = C#). Rest notes can be placed using the 'r' key.
Notes can be 'held' by using the right arrow key while holding down a note key. You can also select a MIDI input from the settings to input these notes from a controller.
Looping
Loops are formed when a root node is placed next to a connected set of notes. The notes are surrounded in an outline as soon as they are included in a loop. Root nodes are placed using number keys, with the number corresponding with the MIDI channel (or instrument number).
Loops can be played and stopped independently. To start a loop, select a red sequence root node and press shift-enter
Fill Tool
Goosegrid includes tools for filling the selection with notes automatically. The dice icon on the left toolbar opens up the fill tool settings. The keyboard shortcut shift-r will fill your selection with notes from that key and scale.
Parameter Modes
Each note has a number of parameters that can be tweaked. Certain keys change the parameter mode, which allows you to change the value of things like octave, velocity, and timing.
- 'o' key - Octave
- 'v' key - Velocity
- 't' key - Transpose
- 'n' key - Nudge
When performing this function on a grid node, it will apply to all subsequences, making it possible for you to easily change the octave of a full section of a song, or copy and transpose parts.
Sound
This tool does make sound by itself but it's primarily meant to be a MIDI sequencer, connecting to something like Ableton. Future versions of this will involve more robust output. Audio can be muted by pressing the icon in the top right. The volume can be adjusted in the settings.
Saving and Loading
Projects can be saved using the 'floppy disc' icon in the toolbar, or by using ctrl-s. Projects can be opened using the icon to the right of the floppy, or ctrl-o.
MIDI
To use WebMIDI you will likely want to be on Chrome, and you will need to have some sort of virtual MIDI loopback. On Windows check out Tobias Erichsen's loopMIDI On MacOS you can use the built in IAC bus, which has to be enabled in Audio MIDI Setup. Check out this article if you have issues.
Keyboard Shortcuts
Action | |
---|---|
shift-r | fill selection with random |
ctrl-s | save |
ctrl-o | open |
ctrl-z | undo |
ctrl-shift-z | redo |
keys 0-9 | place sequence root with given midi channel |
lower case (c,d,e,f,g,a,b) | inserts a natural note |
r | inserts a rest |
upper case (C,D,E,F,G,A,B) | inserts a sharp note |
shift + upper or lower case (c,d,e,f,g,a,b,r) | inserts a sharp note |
arrow keys | select single cell |
shift + arrow key | select multiple cells |
ctrl-c | copy selection |
ctrl-x | cut selection |
ctrl-v | paste selection |
ctrl-shift-v | paste selection as a single grid node |
shift-enter | toggle playback on selected sequence root nodes |
enter (on grid node) | go into subgrid |
ctrl-enter (on sequence input node) | go to parent grid |
About
This tool was made by Austin Slominski (@aceslowman) in 2023.
Let me know if you have any issues or suggestions! Goosegrid is an ongoing project and I will be making updates with bug fixes, new features, etc.
Bugs
If you come across any bugs, please let me know by creating a thread on the itch.io community page.
Status | Released |
Category | Tool |
Platforms | HTML5 |
Author | aceslowman |
Tags | Creative, electronic-music, MIDI, Music, Music Production, web |
Average session | A few minutes |
Languages | English |
Inputs | Keyboard, MIDI controller |
Development log
- Addition of MIDI SyncJun 15, 2023
- goosegrid v1.0 released!May 12, 2023