norns studies
comprehensive lessons on individual elements of norns scripting. through these resources, you’ll learn how to translate your musical ideas into scripts and how to extend those scripts to speak with all kinds of friends.
core concepts
tutorials written by monome. we recommend one lesson per week. a slower pace makes it easier to experiment and uncover the simplicity of the underlying language (Lua).
- first light // learning to see. edit a script.
- many tomorrows // variables, simple maths, keys + encoders
- patterning // screen drawing, for/while loops, tables
- spacetime // functions, parameters, time
- physical // incorporating grids + midi
- streams // system polls, osc, file storage
- softcut // a multi-voice sample playback and recording system built into norns
- clocks // create timed and clock-synced function calls: loops, repetition, and delays
- grid recipes // short snippets of code for canonical grid interactions
contributed knowledge
resources developed by other learners, script authors, and designers from our community.
- norns study group // a community run discord server for asynchronous and video study sessions
- athenaeum // a repository of study, spike, and sample scripts from Tyler Etters
- norns: tutorial // chunked examples that reveal the idiosyncrasies of the core norns concepts from Devine Lu Linvega
- norns development // general development notes from Jordan Besly’s awesome monome norns repo
- lua libs index // overview of norns library extensions (ibid.)
learning Lua
while you don’t need to master the entire Lua language to make the most of norns, you eventually may be interested in checking out more traditional programming texts.
- lua cheatsheet
- programming in lua (first edition)
- lua 5.3 reference manual
- lua-users tutorials
- lua in 15 mins
SuperCollider
for those who want to explore creating new synthesis engines for norns, these SuperCollider resources are some of the most-common starting points.
language fundamentals
- written tutorial
- first steps to colliding atoms
- how to get your code to play
- what is a function?
- if , while , for , etc
- supercollider server explained
- j concepts in supercollider
- how to use an interpreter with supercollider
managing audio
ask questions and share what you’re making at llllllll.co
edits to these pages welcome, see monome/docs