Liberative Constraints

How can randomness and constraints spark creativity?

This article is also available on Medium.

To read Cali’s take on this project, check out the article on her own blog over here! 🙂

These past few years, I’ve had the chance to collaborate several times with Cali Rezo, a great abstract painter. In addition to creating amazing stuff, she’s also deeply interested in how we can mix art and tech to further nurture creation, just like me! That’s why, together, we explored how to use AI and machine learning models to mimic or analyse her art, how to show her paintings in a simple but fun way with a little mobile game or even how to take advantage of CGI and 3D software to make her her own virtual gallery…

These projects were really cool and they taught me a lot on plenty of domains. But there is something else that we are both often wondering about, and that’s how we can share our knowledge with various audiences. In particular, Cali has always been keen on chatting with children about art, because she usually finds kids are open-minded, happy to explore and pretty creative when given just the tiniest of nudge.

This “capacity to create” is, of course, far from being a “gift” or a “natural ability”. To Cali and I, it’s more about practising your creativity and making sure you have the right incentives to continue doing so. Motivation is key because it will push you forward and dare you to try new things, which will in turn have you create even more!

But even professionals such as Cali, who are supposed to create on daily basis as part of their job, can get stuck. There are those gray and down mornings where you’re just not into it and getting through your to-do list is a real pain.

This realisation had us think: what if we could make a tool to give you an “automated nudge”? A little help to suggest an idea, or light a path, or even just spark a little flame in the back of your brain?

And what if we could make it fun and appealing to children, too, so that teachers could use in the classroom to introduce art concepts?

Hence we decided we would create the “Liberative Constraints” generator! 🙂

If you want to try it for yourself, it’s available in English and in French for free over here:

How do you use the generator?

First of, you can toggle between the French and English version by clicking the language marker in the top-right corner. You can also get some additional info or our contact by clicking on the “Info” menu next to it 🙂

Now – the dices can be rolled either by:

  • clicking on the “Play” icon at the top to re-roll all four cubes
  • or by directly clicking on a cube to re-roll just this one

Each time your roll a cube, it will choose a random direction between top, right, down and left and rotate to show you another face. These faces are automatically filled with random words from four different lists: mediums, tools, colours or techniques.

Note: the random algorithm is pretty simple, so there might be some repetition; but given they are at least 30 words in each list, this shouldn’t happen too often 😉

For most of the words, Cali found very interesting related artists, or artworks, or pictorial movements – so whenever there were one or more cool external resources associated with a word, we put little link buttons on the right of the cube: just click those and you’ll be able to dive further into this specific topic and discover a bit of art history!

Who is the generator for?

The very first iteration of the generator was more “classical” in its form and the lists contained more peculiar tools and techniques, because we initially worked on something solely for Cali – to help her with her 2022 collages.

But as we started to play around with it, we discovered it could be relevant to expand it to also accommodate for children (be it kids in class or offsprings stuck at home because of Covid)!

That’s why we updated the overall UI to be more colourful and we made the entire system as simple as possible to use – and also available on tablets/mobiles, by the way 🙂

Hopefully, this could inspire some tired parents or even give an additional bonus tool to some art teachers in schools – the generator is completely free and we’d like everyone to use it, as long as it’s for non-commercial use!

Note: if you try out the tool and have some feedback, questions, or ideas of improvements, don’t hesitate to send us an email at 🙂

How did we make the generator?

On the technical side, this generator was made with pure HTML/JavaScript/CSS.

The cubes movement relies on the same sort of logic as the one I used for the Caliscope, and that I described in depth in a follow-up series of tutorials: basically, we have 6 HTML elements for each of the cube faces and we apply some various CSS styles to them so that they are visible or hidden, and that they have some 3D-like animation effects.

The French/English internationalisation is done via a simple key-value pairing: I stored all of the English texts in one key and all of the French ones in another and, when I first load the page, I check the URL parameters (more precisely, the lang parameter, with a default to “fr”) to know which key to load and input in my <div>s.

Finally, the HTML is semi-dynamically generated: most of the structure is already written in the HTML index but a lot is then overridden/re-filled via JavaScript 🙂

A few of Cali’s “liberated-constrained” creations

Since the beginning of 2022, Cali has been using our “Liberative Constraints” generator to create a lot of collages and other artworks! Here are a few, with the associated words that were randomly picked…

We hope it can inspire you 🙂

01 : Scissors / Tracing paper / Yellow-Orange-Red / Collage
02 : Fingers / Magazine / Blues / Un-gluing, Ripping
03 : String / Sticker / Pink / Cutting
04 : Tape / Instructions Manual / Gold / Typography
05 : Staple / Leaf / Cool colours / Assemble
06 : Stickers / Corrugated board / White-Beige / Cut


This new project was again a great opportunity to get out of my usual dev/game horizon and explore new domains; although not extremely technical in terms of coding, the “Liberative Constraints” app was more of a UI/UX challenge and a real treat with regard to content!

Even if Cali made most of the research, it was a nice way for me to hear the names of some lesser-known artists and to have a glance at their creations; and I also really enjoyed seeing pure randomness be distilled into actual artworks by Cali…

Don’t hesitate to give us your feedback on the generator if you try it out – and to share any other idea of nice tool we could make in the comments! You can also follow Cali on her Instagram and find me on all the social networks to keep up-to-date with our latest news 🙂

Leave a Reply

Your email address will not be published.