A solar system you can pick up

Planets circle the Sun on brass rings in a planetarium; grab one and its lesson card opens beside it.

A capture of the project running in Graspable's emulated headset. A brass orrery in a dark planetarium: eight planets on brass orbit rings around a glowing Sun, the Earth held up in front of the camera with its sunlit side showing next to a dark card listing its diameter, day, year and distance from the Sun.

Open the appContinue from it in GraspableRuns in a browser, on a Quest or a Vision Pro.

The request, word for word

This is the text that was sent to the agent to start the project. Nothing was edited for this page.

Build a solar system I can stand next to and handle, as a lesson for a classroom, in VR with its own surroundings (not AR). The place: a quiet, dark planetarium room. A round, slightly raised platform of dark polished stone under me, a low brass rail around it, a domed ceiling with a few thousand small stars and the faint band of the Milky Way, all drawn in code. Soft light, so it feels like a real room and not black emptiness. In the middle of the room, at chest height about 1.5 metres in front of me, an orrery: the Sun, glowing and lighting everything, and the eight planets moving around it on thin brass orbit rings, each at its own speed in the right order and direction. Sizes and distances are compressed so everything fits in a circle about 2.4 metres across, but the order of sizes is true (Jupiter largest, Mercury smallest). Each planet must be recognisable from its surface, drawn in code: Earth with oceans, continents and clouds, Mars rust red with a polar cap, Jupiter with bands and the red spot, Saturn with its rings casting a shadow, Venus cream, Uranus and Neptune in their blues, Mercury grey and cratered. Planets spin, are lit only from the Sun's side and are dark on the far side. Each one carries a small label with its name that always faces me. I can grab a planet with either controller (grip or trigger; on the desktop, click it): the orbits pause, the planet comes with my hand at about four times its size so I can turn it and look at it, and a card beside it shows its name, its diameter in kilometres, the length of its day and its year, its distance from the Sun and one sentence a twelve-year-old would remember. Letting go sends it smoothly back to its place and the orbits go on. A small brass console at the rail in front of me has three buttons I can point at and press: Slower, Faster, and Pause, and shows the speed as "1 day per second" and so on. Use physically based materials, real soft shadows, text that is crisp and readable from two metres (dark plates, warm white text, drawn to a canvas, no fonts from the network). Nothing may be downloaded while it runs. Keep 72 fps or more in the headset. It must work in VR in the emulated headset with an Enter VR button and on the desktop with the mouse.

How it went

Runs
2 runs: the request above, then one follow-up request. A run ends only when the project builds and loads in a real browser without errors.
Started from
The React XR template: An empty WebXR scene with React Three Fiber: the starting point for anything.
Notes and credits
The second run (planets larger, orrery lower, smaller console) stopped after one edit when the ChatGPT usage limit was reached and was undone with Graspable’s own undo; what is shown is the first run as built. The planets are small from where you stand, and the time console is wider than it should be. AI: Codex CLI (build), Graspable agent (follow-up).

Build your own

Graspable is a desktop app. Describe the scene you want, and the agent builds it as a real project on your computer and checks that it runs. It is free with your own AI account.

Download GraspableYour first project

More examples

See all examples