I meant to send this email last month but then “the holidays” came up so I’m finally ready.
I’m back in the US after about 6 months in Germany. I had an incredible and productive time as an artist-in-resident at ZK/U in Berlin, and can’t wait to go back again.

This month’s newsletter is all about L5 , the creative coding library I’ve initiated, now out in its first alpha iteration. I’ve been working on it since July, and have put a couple hundred hours into it so far. Through my own word of mouth there is already a small community of people creating new projects, languages, and artworks with it. There have been a couple contributions from other people, and I’ve been reading blog posts from people that are already using it to make their artwork! That’s so awesome, particularly since I’m not active on social media beyond mastodon and instagram.

I’m ready to share L5 further, get feedback, find contributors, and continue to build resources and community.

require("L5")
function setup()
size(400, 400)
windowTitle('Hello L5')
background('white')
noStroke()
describe('A basic drawing program in L5. A random fill color each mouse press.')
end
function mouseDragged()
-- Draw a circle that follows the mouse when held down
circle(mouseX, mouseY, 20)
end
function mousePressed()
-- Pick a random color on mouse press
fill(random(255),random(255),random(255))
end
L5 is a fun, fast, cross-platform, and lightweight implementation of the Processing API in Lua. It is a free and open source coding library to make interactive artwork on the computer, aimed at artists, designers, and anyone that wants a flexible way to prototype art, games, toys, and other software experiments in code.
L5 is designed to work cross-platform, including on desktop, phone, and tablet. Beyond running fast on modern machines, L5 is optimized for older and lower-powered devices, minimizing resource usage to keep creative coding accessible to everyone. This helps with our goal of building resilient, long-lasting software projects. L5 is built in Lua, a robust but lightweight, long-running, lightning-fast, extensible language. --from Welcome to L5.
If you know Processing or p5.js, you can dive right in. If you don’t have experience with these, there is A Complete Introduction To Programming with L5.
L5 is created to run on desktop (and tablet/phone) platforms. It’s a couple megabytes, and runs well on old, underpowered, ancient machines - and it’s lightning-fast on new computers as well. Its syntax is similar to p5.js, but without the browser functions.
At this point, it has lots of functionality (about 210 functions) but it does not have 100% feature parity with Processing-p5 yet. I also have written about 200+ reference pages and tutorials and examples, adapted from p5.js and Processing, though more tutorials and examples are needed.

Install
For the past 3 months I've been building dozens of my own projects in L5. Some of these are documented online on my work log.




Survey
I've created a survey to get feedback on L5 to help guide its next stages. Ideally, you fill out the survey after trying it out!
Winter roadmap goals:
add a L5 mode to the Processing IDE (highest priority!), to make it easier for Mac/Windows users to get started
video tutorials on installing and getting started
refactoring and bug fixing
comprehensively clean up and improve compiler error reporting
build out easier entry points for contributions
add documentation and gather feedback on permacomputing and running L5 on old phones and computers (it's currently being tested on 2009 Windows, 2012 Windows, 2014 Macbook, 2019 iPad, and 2015 phone with postmarketOS).
I’m looking for contributors to help with these!
If you need help getting started with L5 or installing it, or you have any feedback, feel free to write back to this email and I'll respond. Thanks to everyone who has filled out the form or sent feedback. It’s really helpful.
Thanks! Best wishes to you in the year ahead. Get in touch anytime.
Lee

You just read issue #22 of Lee Tusman newsletter. You can also browse the full archives of this newsletter.