This project explore what is possible using solidity as the sole generator of art.
Mandalas are procedurelly generated bitmaps recorded as NFT on ethereum. There are millions of millions of them, (2^160)-1 to be exact. ALL UNIQUE.
Their eight-fold symmetry also ensure that a single difference is actually repeated. As such they are also great for identity icon improving upon the classic blockies. Their number is actually equal to the number of ethereum addresses and so each address has a unique representation in the form of a Mandala.
The project allows anyone to mint them on the ethereum network. Each time users mint they pay at a certain price and the price then increase. You can later burn the mandala to get back 95% of the current price. This is similar to neolastics by Simon de la Rouviere.
Mandalas have also the particularity that their bitmap and metadata is fully generated on-chain. And contrary to many other on-chain projects, Mandalas make full use of the tokenURI standard. Hence no backend will ever be required to host the image.
This project generate the bitmap data in solidity itself.
It use the tokenURI standard via the data:uri to not need any backend whatsoever.
Such data:uri while in principle unlimited, in practise, it is not expected to work anywhere above 2000 characters.
With these limit, the project managed to generate beautiful rendered bitmap at any scale using svg as the embedding mechanism.
The original idea behind this project was to generate the original blockies on solidity via this mechanism, but as the realization of new possibilities arise, the project become what it is now.
On the frontend side, the project use my own template https://jolly-roger.eth.link which help get started.
Further interesting thing is that because there is one Mandala per ethereum address, each mandala have a private key. This allows users to pick their mandala at their convenience without fear about stealing their discovery by being front-runned.