Building a Geological Clock with Claude Code: Single HTML + Three.js

✍️ OpenClawRadar📅 Published: May 5, 2026🔗 Source
Building a Geological Clock with Claude Code: Single HTML + Three.js
Ad

Owen Thomas, a product designer with basic HTML/CSS skills, built eona.earth — a geological clock that maps Earth's 4.5 billion year history onto a 12-hour clock face synced to local time. The project was built entirely using Claude Code (Pro plan) and is shipped as a single HTML file with vanilla JS, Three.js for WebGL, and a custom fragment shader — no build step.

Key Details from the Build

  • Claude Code usage: Mostly used Sonnet for implementation, switched to Opus 4.6 for complex work or when stuck. Initially tried Opus 4.7 but found it over-engineered (e.g., running 4 noise passes per pixel at 60fps).
  • Custom WebGL shader renders the globe with paleogeographic continent data. Procedural clouds and atmospheric haze evolve as you move through geological time.
  • Colour palette was designed in Gemini (free plan, Thinking mode) to create a system for 14 phases of Earth's evolution. Opus 4.6 then built an interactive palette editor (unprompted) for adjusting colours, surfaces, and clouds — available at eona.earth/colour-lab.html.
  • Interaction: Drag a scrubber handle to move through 4.5 billion years manually. Toggle layers on/off via top-right controls.
  • Time mappings: 12:06 — Moon forms, 2:45 — first life, 11:39 — dinosaurs go extinct, humans appear in the last 3 seconds.
  • Continental drift: Post-cryogenic snowball Earth rendered using paleogeographic continent data (shape-tweened map series).
Ad

Workflow & Constraints

Owen worked evenings over 2 weeks, staying within Pro plan limits by being intentional: short sessions, off-peak hours, working outside Claude where possible, and using context files. The source code is on GitHub at github.com/owen-thomas/eona-earth.

Planned Features

  • Keyboard navigation to jump between events
  • Scrub without globe spinning (to observe continental drift)
  • Future Earth projection covering the planet's remaining lifespan (second 12-hour period)
  • Physical build using Waveshare round display + Raspberry Pi 4
  • Sound design
  • Watch/mobile/desktop app

📖 Read the full source: r/ClaudeAI

Ad

👀 See Also