Around 300 BC, Greek mathematician Euclid of Alexandria wrote a work that would become one of the most influential textbooks ever written, Elements, where he describes his mathematical thinking on geometry and number theory. From just 10 axioms, he proves 465 theorems, including the Pythagoras Theorem and the proof of the existence of only five Platonic Solids.

First printing of Elements, 1482 / First English translation, with an introduction by John Dee, 1570 / Byrne’s edition, 1847.

The Generative Challenge

What if… we could develop a deterministic algorithm that was able to generate Euclid’s theorems from a randomized hash. The random emergence of the original drawings could be compared to the Infinite Monkey Theorem, but if we manage to make a few hand-crafted hashes that generate them, the system would be able to create an infinite number of unique new theorems!

Wolfram graph of Euclid's theorem dependencies / Book I Proposition I in Wolfram Language / Book I Proposition I recreated on EUCLID CODE (pa0.bg4.ma0.tr01000.fx10.rn5D.shC0inS90st100rnDE.shC0frC670inS4Cst210rnB2.shT0frA895inD00st200rnCC)

Token Distribution

The EUCLID CODE Fibonacci Token Map, containing 1870 Tokens
  • 1870 Tokens, spread over 9 squares of the Fibonacci Token Map above.
  • Each minted Token is assigned to one random slot on the Token Map. Tokens Ids are shuffled on-chain and the Artwork is revealed immediately after minting. (tech details at the end…)
  • Inner Tokens feature minimalistic artworks, with less shapes and effects. Simpler, fewer, rarer.
  • Outer Tokens can generate more complex and chaotic artwork.

The Drop

On July 1st, 2022, Chromium Sale starts (CHROMA Premium Sale). Automatically available to CHROMA Token Holders. No need to apply, no snapshot.

  • July 1st, 2022: Chromium Sale, fixed price of ETH 0,01
  • July 8th, 2022: Public Sale, fixed price of ETH 0,001
  • Chromium still continues, until sold out.
  • Up to 100 tokens can be minted by the Team, for airdrops and treasury, randomly like every other. Because we love it.

Mainnet Mints

EUCLIDs are already being minted! Following are some selected artworks, but you can check the full gallery online or on OpenSea.

Euclid#307 / Euclid#394 / Euclid#1823 (Byrne palette)
Euclid#1472 / Euclid#722 / Euclid#1093 (Kirby palette)
Euclid#44 / Euclid#702 / Euclid#1266 (Metro palette)
Euclid#637 / Euclid#893 / Euclid#1033 (Panel palette)
Euclid#946 / Euclid#1123 / Euclid#1343 (Abaporu palette)

Tech Stuff…

This is what happens to generate a new artwork, from minting to the screen…

  • Hash Generation. When minting a new Token, the smart contract generates a randomized 128-bit number known as Hash, that will serve as seeds to the theorems, stored on-chain.
  • Euclid Formula. Using the Hash, the Formula is generated every time the Token Metadata is requested. This function is deterministic, meaning each Hash will always generate the same Formula.
  • Euclid Graph. Using the Formula, the DApp create a JSON graph with the actual geometry (shapes, lines, colours, styles, etc). For development freedom and flexibility, from here we need to process off-chain.
  • Render. Finally, the Graph can be rendered, as an SVG or PNG image. USD is also being considered.
  1. Euclid.sol: Customized OpenZeppelin ERC-721 minter.
  2. EuclidFormula.sol: Using a Token’s Hash, generates the artwork Formula.
  3. EuclidShuffle.sol: Using the Randomizer, shuffles and delivers the 1870 Token Ids one by one.
  4. EuclidRandomizer.sol: Generate Hashes the random number sequences (not verified to preserve randomization integrity).
  5. Whitelist.sol: Manages the CHROMA Tokens claiming status for Chromium Sale.
  6. ChromaBatch.sol: Abstract the five CHROMA contracts as if they were just one, for Chromium Sale.

Thank You!

Go to The collect-code Vision for the full project roadmap.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store