AB5D

planets

donnoh · Project 91 · Factory

Edition size: 512 · First mint: 12 June 2021

planets #359 by donnoh. Copyright: CC BY-NC 4.0 (indexed label). From the AB5D collection.

Live artwork. Open artwork

The work and its context

planets is Art Blocks project 91 on the contract at 0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270, on Ethereum mainnet, credited to donnoh by both the index and the live project page. The indexed record returns 512 invocations against a maximum of 512, a declared dependency of p5@1.0.0, a square aspect ratio and a curation status of factory 1. The AB5D atlas position 90 is a catalogue index and is not the project ID, which is 91.

The artist's statement is one sentence: "A minimal and geometric interpretation of a planetary system" 2. It provides a concise point of departure. The work draws a central star, a set of concentric orbit circles, and a small filled disc travelling on each one, in two colours on a flat ground. The seven traits, Type, Ufos, Moons, Rings, Binary, Orbits and Rotation, are all counts or binary states, but they do not exhaust its geometric relationships 23.

The limited vocabulary makes small differences conspicuous: the size of a central disc, the distance between two orbit lines, and the appearance of an elliptical ring all alter the balance of an otherwise spare field. 45

Two things need establishing before the essay proceeds, because the platform page states neither. The work is animated: the planets move continuously in the observed original renderer, and the code requests sixty frames per second without establishing an achieved playback rate 4. And the direction of that orbit is a per-token trait, clockwise on 387 tokens and counterclockwise on 125 3, which is a property only visible in motion and therefore invisible in every still image of this project ever published, including the platform's own previews.

Conception and development

The inspected collection page supplies a brief artist statement. The index has no linked interview and points to a social profile as the project website. These findings limit the present account; they do not prove that no development narrative exists elsewhere. The discussion below therefore distinguishes code-derived design observations from documented artistic intention. 21

What can be said about the design comes from the code, and one decision stands out. The program does not choose a look; it chooses a system and then draws it honestly. Composition is expressed through a spacing rule. Each orbit is computed from the one inside it by adding the previous planet's radius, the average of its ring dimensions, the clearance its moon needs, and a fixed gap. The spacing you see is therefore a consequence of what is in the system through an authored arrangement rule, which is why a token with many ringed and mooned planets spreads wide and a token with bare planets sits tight. 1

The two colours are fixed for the whole edition: a dark charcoal and a warm cream. A token is either dark on cream or cream on dark, and which way round is one hash byte. The edition calls the inverted case antimatter 3. There is no palette variation of any other kind anywhere in the project, which puts all the visible difference into geometry and count.

The one element that breaks the register is the UFO. A planet can be replaced by a small flying saucer, drawn as a dome, a hull and three landing legs. Its selection uses a remainder test with a divisor of one hundred; that is not an audited one-percent incidence. Against a minimal geometric statement about planetary systems it is a joke, and it is the only figurative thing in the project. 1

How the work was constructed

The artist script was retrieved from the indexed project record by an HTTP POST to the public GraphQL endpoint, filtered on the exact slug and corroborated against the contract address and project ID returned in the same response 1. It is 3,791 bytes and hashes to SHA-256 5a1cb34c09372df8f6e02010b4ea14d634f15500d8ff722d0e125a453f768c52. The record reports a script count of 1 and the single scripts row reproduces the script field exactly. This was an index retrieval, not a direct read of contract storage, and no block reference was pinned. The whole program was read; what follows describes it without reproducing it.

There is no random number generator. The program reads the token hash directly, and every parameter is a mapped hash value. But the way it reads the hash is worth setting out carefully, because it is not what it appears to be. 1

The accessor takes an index, adds two to skip the leading 0x, and returns the two characters at that offset. Consecutive indices therefore return windows that overlap by one hexadecimal character, not successive bytes. Index 0 returns the first byte; index 1 returns the second half of the first byte joined to the first half of the second; index 2 returns the second byte. The program uses indices 0 through 62, so it reads sixty-three overlapping eight-bit windows out of a sixty-four character hash rather than thirty-two independent bytes. 1

The consequence is that neighbouring parameters are not independent. Planet radii are read from indices 2 through 11 and planet speeds from indices 12 through 21, so adjacent planets in the same system share four bits with each other. Whether that was intended is not established; what can be said is that the parameters of this work are correlated by construction in a way that thirty-two clean byte reads would not be. 1

The values are put to work as follows. Index 0 sets the star radius and, by its remainder modulo four, the direction of time. Index 1 sets the orbit count, mapped from ten down to one, so a low byte gives a crowded system and a high byte gives a lonely one. Index 6 sets the colour inversion, index 62, the last byte of the hash, sets the binary star. Indices 2 through 11 give planet radii, 12 through 21 planet speeds, 32 through 41 and 42 through 51 the two axes of each planet's ring ellipse, and 52 through 61 the ring rotation. The same index that sizes a ring also decides whether the planet has a ring at all, whether it is a UFO, and, at another index, whether it has a moon. 1

The program uses divisibility tests with constants of five for rings and moons, twenty for binary stars and colour inversion, and one hundred for UFOs. These are selection rules, not exact probabilities: the hash-derived integers occupy a bounded range, and several decisions reuse overlapping inputs. 1

Drawing is a single scene redrawn each frame; sixty frames per second is the requested rate. The background is repainted, the origin moved to the centre, the star drawn, and then each planet drawn in turn: its orbit circle as a thin outline, the planet as a filled disc positioned by cosine and sine of an accumulated frame-based time variable multiplied by that planet's speed, plus a speed-dependent phase offset, its ring as a rotated ellipse if it has one, and its moon as a tiny disc circling it at a speed derived from Perlin noise. The noise seed is a fixed constant shared by the whole edition, so moon speed is a deterministic function of planet speed rather than an independent draw. 1

A binary system divides the star radius by 2.1 and draws two stars circling the centre in opposition. The UFO replaces the planet disc with a drawn saucer and enforces a minimum size so that it stays legible. 1

There is no loop disable anywhere in the program. planets runs until the tab is closed. 1

The mint

The indexed record separates four events 1. The first token was minted at 2021-06-12T21:45:03Z. The project was activated at 2021-06-12T22:39:12Z, fifty-four minutes later. The second token was minted at 2021-06-16T19:00:20Z, and start_datetime carries that same value. The project completed at 2021-06-18T04:13:02Z.

The first mint precedes the recorded activation. The token record for invocation 0 confirms the timestamp, and its current owner is the artist address recorded on the project 6, so the artist still holds their own first output. This current ownership observation does not establish the original allocation.

The nearly four day gap between activation and the second mint is the more useful figure, and it makes the usual point concretely: the activation timestamp cannot by itself establish when public purchasing began. 1

The interval from the second indexed mint to completion is 1 day, 9 hours, 12 minutes and 42 seconds, covering invocations 1 through 511. It is not presented as a public sale duration, because the index does not establish when minting opened and start_datetime duplicates the second mint rather than marking an opening. 1

The record reports a price of 50000000000000000 wei, that is 0.05 ETH 1, recorded as a current value rather than as the price paid at mint; no primary announcement of an original price was located.

The AB5D holding, invocation 359, was minted at 2021-06-18T02:18:34Z 6, about two hours before the project completed.

The current project index labels the artwork CC BY-NC 4.0 but supplies no licence link. The matching Creative Commons deed permits sharing and adaptation subject to attribution, indication of changes and a noncommercial condition. The label is a current indexed observation; the research does not reconstruct earlier terms or establish when this label was first adopted. 17

The artist program and its dependencies require separate treatment. No independent reuse grant for donnoh's script was recovered in the inspected project material. Its availability for reading does not supply such a grant. The declared p5.js 1.0.0 dependency has a versioned upstream licence file identifying LGPL 2.1. That library record does not automatically license the artist's own program on the same terms. 18

A still reproduction records one moment of an animated work. Identifying it as a preview or captured frame helps a reader understand the evidence, but the present research does not establish a special additional licence for still frames. AB5D's CC0 dedication applies to its original essay prose; it does not replace the separately reported artwork, artist-code or library terms. 478

Close reading of examples

The comparison uses editions 359, 496, 11 and 10. Their identities were checked against indexed token records, and the coordinator inspected each original renderer in two visibly different states. The observations establish motion without claiming a measured frame rate or a timed performance test. The submitted preview observations and telemetry remain separately attributed in the research record. 6459

planets #359 by donnoh
planets #359 by donnoh. Open artwork

In #359, a cream central disc sits within seven delicate concentric paths on a charcoal square. Small cream bodies interrupt the lines, and a tiny neighbouring satellite adds a second scale of movement. The system occupies a comparatively compact area, leaving a wide dark margin. That empty space is active in the composition: it makes the pale lines seem especially fine and gives each moving body room to be followed. As the bodies change position, a temporary grouping on one side disperses and another grouping forms elsewhere. The centre remains visually steady while the distribution around it changes. This is the AB5D collection example identified through the linked-wallet record, rather than an arbitrary illustration of the series. 6410

The interest of #359 is not exhausted by counting its orbits. A circle offers a complete path to the eye, but the moving dot occupies only one position on it. Looking can alternate between reading the whole nested structure and following an individual body. The central disc supplies a strong anchor for both modes. Its filled area contrasts with the almost weightless lines, while the smaller discs prevent those lines from remaining a purely abstract diagram. This account describes the observed image; the orbit-spacing calculation explains part of its structure without making the visual experience reducible to arithmetic. 14

planets #496 by donnoh
planets #496 by donnoh. Open artwork

In #496, the arrangement is also compact, with five fine paths around a cream centre. Two moving marks resolve into small saucers with domed tops and fine projections beneath. Another body carries a narrow elliptical ring. The saucers are significant at the scale of the individual mark: they change the drawing from a vocabulary of circles and ellipses into a recognisable image of an imagined craft. Yet they obey the same orbital organisation as the simpler bodies. In the inspected states their positions change, so any description locating them permanently at the top or right would mistake a moment for a stable feature. The quiet visual joke is my reading of this juxtaposition, not a recovered statement of intention. 15

planets #11 by donnoh
planets #11 by donnoh. Open artwork

In #11, a warm cream field reverses the relation between line and ground. The centre is a dark disc, the five paths are fine dark outlines, and two bodies carry tilted rings. The broad pale margin makes the arrangement resemble a diagram drawn on a sheet more readily than lights against a dark field. The central shape now gathers darkness rather than emitting the brightest area. Comparing it with #496 reveals why inversion matters beyond a trait label: the same distinction between a filled centre and delicate paths acquires a different apparent material character. This is a perceptual interpretation grounded in the two inspected originals. 5

planets #10 by donnoh
planets #10 by donnoh. Open artwork

In #10, ten paths spread across most of the square. Several bodies have rings whose angles range from almost circular outlines to narrow ellipses. The inner paths have visibly wider separations than the closely spaced outer paths, and the central disc appears small beside the full extent of the system. The eye has more routes to follow and less surrounding emptiness in which to rest. Between the two observed states, the moving bodies substantially redistribute themselves around these fixed paths. The composition can briefly suggest a diagonal or a loose cluster, then loosen that relation as movement continues. 5

These four examples support comparison of scale, inversion, ring shapes and figurative interruption. They do not establish the frequency of every visual outcome or the absolute limits of the edition. The submitted complete-edition metadata sweep and three trait-rule reproductions are useful supplementary checks, but they are distinct from looking at the original artworks. A metadata count cannot supply an unobserved colour, movement or compositional effect. 35

Significance and limitations

planets makes an authored system visible through a restrained graphic vocabulary. Filled discs give the eye points to follow; fine circles make their routes legible; a fixed centre holds the arrangement together while the peripheral balance changes. The palette is limited, but the comparison shows that inversion, scale and the spacing of paths can substantially change the experience. These are compositional decisions implemented as rules. 145

The small saucers in #496 are especially revealing. They retain the structure of an orbiting body while introducing a recognisable figure into otherwise elementary geometry. In #10, by contrast, interest gathers around the relation between the broad nested field and the varying ellipses attached to its moving points. The work can accommodate both readings without requiring a different underlying visual language. 15

Motion matters to its preservation. A still can show the paths and one arrangement of bodies, but it cannot demonstrate the direction of their travel or the temporary alignments that form as they move. The original renderer is therefore more informative than a trait list beside a preview. The submitted metadata analysis corroborates some code-derived traits, but it is supplementary evidence, not a substitute for watching the work or a proof of historical script identity. 345

Unresolved research questions remain: recover a fuller primary account of the project's development; establish the original public price and allocation history; trace historical artwork terms and any separate artist-code grant; and compare the indexed script with a pinned chain retrieval. The shared bits in neighbouring hash windows are observable in the code, but the research does not establish whether that relationship was a deliberate artistic choice. These limits concern what can presently be documented, rather than a claim that no further records exist. 21

References


  1. Art Blocks public GraphQL index. Art Blocks indexed project record for planets-by-donnoh (GraphQL projects_metadata, including script). Accessed 2026-09-18. 

  2. Art Blocks. planets by donnoh, project page. Accessed 2026-09-18. 

  3. Art Blocks public GraphQL index. Art Blocks indexed token sweep of the complete planets edition with rule reproduction from the token hash (GraphQL tokens_metadata, 512 rows). Accessed 2026-09-18. 

  4. Art Blocks. Art Blocks live renderer for planets #359, measured motion observation. Accessed 2026-09-18. 

  5. donnoh. planets #359, #496, #11 and #10: preview and original-renderer observations. Accessed 2026-09-18. 

  6. Art Blocks public GraphQL index. Indexed token identities for planets; sampled editions 10, 11, 359 and 496. Accessed 2026-09-18. 

  7. Creative Commons. Creative Commons Attribution-NonCommercial 4.0 deed. Accessed 2026-09-18. 

  8. p5.js contributors / Free Software Foundation. p5.js 1.0.0 licence. Accessed 2026-09-18. 

  9. Art Blocks. Canonical token page checks for planets sampled tokens. Accessed 2026-09-18. 

  10. Art Blocks. AB5D collector profile and linked wallet set. Accessed 2026-09-18. 

Written by Claude (submitted model: claude-opus-5), reviewed and revised by OpenAI Codex for AB5D. Original prose: CC0. Artwork and code rights are addressed separately above.

Token usage unavailable for the complete essay.

Token usage

Claude supplied no token telemetry. Review usage is not separately measured. Submitted model identifier is retained without independent runtime verification.

Generation record

Artist dossier · Source record · Essay data

Research record

The indexed project script was inspected. Runtime observations and limits are documented in the research record. Historical price, allocation and licensing questions remain as identified in the essay. Publication does not resolve those evidence gaps.

Retrieval evidence · Research notes · Manuscript