IcosaDance Studio WordPress Theme
Records what a choreographer actually writes down, and works the rest out from it.
Open live preview ↗
Overview
Who it is for
A contemporary dance company. The first one in this catalogue — there were already two theatres and nothing for the people who actually move.
It does not store adjectives
Dance companies describe their work in adjectives. Visceral, raw, tender. The words do no work at all: move them between any two pieces in the country and nobody would notice.
Rudolf Laban spent forty years building something better and every dancer is taught it, so that is what this theme records. A work stores two things — a path through the kinesphere, and a position on four Effort factors — and the site derives the rest.
- What the movement is called. Weight, time and space give eight combinations and Laban named all eight. The theme reads his table; nobody types “this piece is a wring” into a box, and once or twice it comes back with a word the choreographer would not have chosen.
- Which plane the phrase lives in — the door you face, the table you turn in, the wheel you travel along — and what share of it is there.
- How far the body travels, in kinesphere radii. Two is right across the body; the shortest step between two of the twelve is 1.05.
- When it does not know. A piece scored near the middle of a factor is genuinely between two actions. The page reports a weak certainty and says so rather than rounding to the nearest word.
The kinesphere is a real solid, and it was checked
Twelve unit vectors at the cyclic permutations of (0, ±1, ±φ); thirty edges derived by distance rather than typed out; twenty faces by Euler; every vertex with exactly five neighbours; the six named pairs true antipodes; and Laban’s three planes emerging as rectangles whose sides are in the golden ratio — a property of the icosahedron, not a convention anybody agreed to. All of it verified before a line of the interface was written.
Even the projection angles were searched for rather than chosen. At the pair picked by eye, two of the twelve landed twenty pixels apart and their labels overprinted; sweeping the angle space for the largest minimum separation gives a hundred pixels instead.
The front page is a compute shader
WebGPU, where it exists: a compute pass over a storage buffer of 24,576 particles whose attractors are the projected reach points of the work’s own notated phrase. Each particle keeps its own place in the sequence, so the crowd reads as travelling rather than swarming; the noise is curl noise rather than plain gradient noise, which has divergence and would disperse it. The accumulated exposure then drags the hero photograph along the line the dancer travelled.
It falls back to a WebGL2 solve of the same field carrying the same photograph, and to a still image below that. Reduced motion gets the field painted once and then stopped — the preference means do not move things, not take the graphic away.
The footer reports which path is running and, if it is not the first one, why. WebGPU is a secure-context API, so an http preview honestly says webgl2.
The layout does not line up, on purpose
Sections start from different edges and sit at different widths; the repertoire grid gives cards different spans and aspect ratios; every third portrait in a row drops. The offsets come from a small fixed set reused deliberately, which is the difference between designed and sloppy. Eleven sections on the front page and a work page that shows the notation in full.
No portraits
There is not one photograph of a person’s face on this site, and that is a decision rather than a shortage: a dance company is not fourteen faces. Every image is of movement, a stage or a floor.
No page builder, no ACF, no build step, no third-party JavaScript.
What's included
- Full theme source — every template, style sheet & script
- One-click demo importer (idempotent, no page builder)
- Live Customizer controls for copy, colours & content
- Translation-ready .pot file + RTL stylesheet
- HTML documentation + a CHANGELOG file
- Lifetime updates + 6 months support (renewable)
Specifications
| WordPress | 5.6 – 7.0 |
|---|---|
| PHP | 8.0 – 8.3 |
| Browsers | Chrome, Firefox, Safari, Edge (latest) |
| Layout | Fully responsive, mobile → desktop |
| Localization | Translation-ready · RTL included |
| Accessibility | Keyboard-navigable · prefers-reduced-motion |
| Page builder | Not required — native Customizer |
| License | GNU GPL v2 · single-site commercial |
Release
The complete, dated version history ships in the theme’s CHANGELOG file. Every purchase includes lifetime access to future updates.