Imker is a programming language to procedurally generate and modify musical sequences in a live environment.

Download

Windows Download: Windows alpha_07
Mac Download: Mac OSX alpha_07

Roadmap

Roadmap (anything is up for change)

Introduction

Imker tries to be a quick, extensive and visually pleasing live-coding environment to drive synthesizers, drum machines and other MIDI equipment. Imker provides you with tools to quickly modify values and generate algorithms that change values and keep them developing over time.

The word Imker comes from the Dutch word for beekeeper and seems fitting for the hexagon grid might remind some of a beehive. All those dancing values might remind others of bees dancing to communicate.

How To use Imker

When you start Imker up you are greeted by a honeycomb (or a grid of hexagons).
You can navigate the grid by clicking, or by using the arrow keys. This will select a single cell, or multiple on dragging.
Whenever you're ready to give Imker some unput, go ahead. Note that Imker needs 2 values for a cell to confirm it.
A cell only fills itself with the value if it's correct. This means that it's either a value between 0 and255 in hexadecimal format (00-ff).
Or, that it's a existing operator. See operator list for valid operators.
Okey here is where it can become difficult depending on who you are.
Imker uses OPERATORS like "ma" (Math Add); think of it like the + sign.
Imker also uses VALUES, like 69. Imker is hexadecimal based, that means that there are only 256 values ranging from 0 to 255.
A hexagon in a grid has neighbours. These neighbours are friendly towards each other.
Neighbours know each other by these names:



Note that OPERATORS usually have input and output neighbours. One of those input neighbours or PORTS is [T] - or Top. [T] can be either a clock or a value input depending on the OPERATOR. A clock bangs {ON} on 1 and {OFF} on 0. Banging means that the OPERATOR executes it's function. Not all OPERATORS need a bang to execute their functionality. OPERATORS without a clock input PORT update every tick of the BPM clock.
Also Note that in some instances [TR] functions as an extra input port.

Operators

Controls

Config

In the assets folder you can find the config.txt You can change the keybinding from here. You can also change the grid radius from here, note that the radius influences the performance of Imker.

Other

Imker is inspired by Orca