Flora - beta

Flora - beta

an L-systems sequencer and bandpass-filtered sawtooth engine

UI and Controls


e1: next page
k1+e1: select active plant
k1+e2: replace active plant
e3: increase/decrease angle
k2/k3: previous/next generation
k1+k3: reset plants to their original forms and restart their sequences


e1: next/previous page
k1+e1: select active plant
e2: go to next/previous letter
e3: change letter
k2/k3: remove/add a letter
k1+k3: reset plants to their original forms and restart their sequences


e1: next/previous page
k1+e1: select active plant
e2: move up/down
e3: move left/right
k2/k3: zoom out/in
k1+k3: reset plants to their original forms and restart their sequences


e1: next/previous page
k1+e1: select active plant
e2: select control
e3: change control value
k2/k3: remove/add a control point


e1: previous page
e2: select control
e3: change control value

Community gardening
A community garden is under development to share L-system rulesets written by members of the lines community. See the community gardening documentation on GitHub for details.

Preliminary Roadmap

  • Improve the quality and portability of the code.
  • Improve the documentation.
  • Make additional Bandsaw variables available for Crow, Just Friends, and Midi outputs.
  • Add microtonal scales.
  • (done) Add a global setting to bypass the midi_note_off delay
  • Add parameters for envelope (plow) settings and modify sentences.
  • Add modulation and probability controls.
  • Add a randomize function
  • Increase and decrease the brightness of the circles that appear when each note plays according to the level of the note’s graph/envelope.

Suggestions for improvement are welcome.


Norns (required)
Midi, Just Friends, Crow (optional)
Computer (optional for generating custom L-system algorithms)


Press K1+K2 on each screen for basic key/encoder commands.

Complete documentation on GitHub (jaseknighter/flora)


v0.0.3-beta - https://github.com/jaseknighter/flora/archive/main.zip

jaseknighter/flora (changelog)

note: if downloading from GitHub directly, rename the default flora-main folder to flora.



Awesome! I’d like to better understand how pitches are derived and specified. Does the user select a scale and generated pitches are quantized?

That is correct. Also, see the documentation on GitHub for a bit more info: GitHub - jaseknighter/flora: L-systems sequencer and bandpass filtered sawtooth engine for monome norns

1 Like

my jaw is on the floor


Nice! Also, +1 for Shiffman’s book!

1 Like

Wow, love it! Cool name also :slight_smile:

Wow - looks and sounds amazing. Here’s a first play. Can’t wait to try this with Just Friends


this looks and sounds absolutely amazing!

it reminds me a tiny bit of an idea i submitted on the ideas thread using virus genomes as a string of instructions and the virus structure / shape / graphic as a pathway for things to occur.

but THIS is on a whole other level entirely!!!


holy shit. that demo is deeply compelling and just, staggering. this is beyond. thank you so much for sharing this, for tending and growing it.


This sounds amazing. I’ll definitely be playing around with this tomorrow.

I’m charmed by this beauty.
Many many thanks.

so i got lost in the noiz of the script for tonight’s session…perfect weather for it here as well…cold and raining…

two instances of Flora with Cheat Codes 2.
some help from a Blippo Box, Wing Pinger and an LXR:

here’s some of the norns in action…:stuck_out_tongue:


this is excellent, thank you :slight_smile:

Sometimes happens that script does not sounds as well as the concept behind BUT here we have a great result! Sounds amazing.
Thank you

1 Like

Crikey if this isn’t the ultimate auto-generator of the stereotypical modular/monome plinky+reverb æsthetic on norns, with appropriately interesting conceptualization, I don’t know what is! Great work!! :seedling:


I had a lot of fun mixing flora’s output with another sequencer to produce interesting twists on a prepared sequence. This script is quite fun to use!

Regarding crow - not sure if I flubbed a setting somewhere or if this is WIP, but I’m only getting one note/gate pair (outputs 1 & 2)? I wasn’t getting any notes from crow’s third output.

Many thanks to everyone for their responses. I am deeply touched.

I just noticed my original post was missing an important UI feature: on the first screen (plant), the key/encoder combination K1+E2 cycles through a list of ten available plants. I’ve edited the post to include the missing feature.

@Gexex, when crow is selected all notes/gates are sent to outputs 1/2. I’m away from my crow today, but I should be able to work on this tomorrow and split the notes/gates so the first plant sends notes/gates to outputs 1/2 and the second plant sends notes/gates to outputs 3/4.


very very cool

note: to make it work i had to rename the default flora-main folder to flora as the includes path was hardcoded to look for that path.

1 Like

Thank you @hypoxic. I added a note to the Download section of the post about this.

Also, the program is now available via maiden’s project manager.


Very fun to explore! Would it be possible and beneficial to add a randomize function?

1 Like