Datum
Datum is built for CNC machining shops around a real premise: a part is a route, and the route is what's actually being cut. A real RS-274 G-code parser feeds a WebGL2 heightfield carving engine using ball-nose spherical-cap MIN blending, running independent mill and turn bays on one canvas. Route-sheet formulas for scallop height, Ra, and MRR are computed from one PHP-and-JS source, laid out like an actual engineering drawing with title blocks, dimension lines, and GD&T frames — no third-party JS anywhere.
Open live preview ↗
Overview
Datum is built for the contract machine shop that quotes from a drawing rather than a catalogue number: small-lot, close-tolerance milling, turning, grinding and wire EDM for aerospace, medical, defense and industrial customers who need to see the process, not a stock photo of a machine.
The signature is not a shader that looks like machining. One fixed WebGL2 canvas sits behind the entire document — every page, not a hero — and parses real RS-274 G-code: G0/G1/G2/G3, X/Y/Z/I/J/F, G90/G91, a G81 canned drill cycle, tokenized and walked exactly as a machine controller would. It carves a live heightfield with that parsed program rather than looping a shader pattern. At lateral offset d from a cut segment’s centreline, the carved height is targetZ + (R − √(R² − d²)) — literally the equation of a sphere of radius R, because a ball-nose end mill’s cutting surface is a sphere. Every pass is blended into the heightfield with gl.blendEquation(MIN), so the residual scallop between adjacent passes is not a formula this evaluates and draws — it falls out of overlapping real tool geometry the same way it would on the actual machine, because material removal is monotonic and MIN-blend against a persistent texture is the correct model for that, not a shortcut.
Two independent WebGL2 “bays” share the one canvas: a milling XY heightfield and a turning radius-vs-axial-position profile, because a lathe’s kinematics are a genuinely different shape of problem from a mill’s and get their own framebuffer rather than being forced into one. Six real operations — facing, pocketing, drilling, thread milling, grinding, turning — are wired to the six sections of the front page that describe them, each loading its actual G-code program the moment its section becomes dominant on screen, and the tool visibly finishes cutting it rather than looping forever.
The numbers on a route sheet are computed, not typed in. Scallop height (h = R − √(R² − (ae/2)²)), theoretical turning Ra (Ra ≈ f²/32r), material removal rate, feed rate and cutting speed are all derived server-side from a part’s own tool, stepover and feed inputs — the same values the background reads its stepover from, so a route-sheet table and the carved texture behind it cannot drift into disagreeing with each other.
The layout system is a real engineering drawing’s own conventions used as the site’s standard chrome, not decoration bolted onto a generic card grid: a title block (part, revision, material, tolerance, lot, lead time), ruled dimension lines, and boxed GD&T feature-control frames. Archivo carries titling, JetBrains Mono carries every number that means something — a tolerance, a feed rate, a G-code line — so a reader can tell measured figures from prose at a glance.
Capabilities (six real machine types) and Parts (seven real part classes, each with material, tolerance, finish, quantity, lead time, drawing revision and a full process route) are dedicated content types where every stored field is an input the front end computes from. An Industry taxonomy covers aerospace, medical, defense, semiconductor equipment, energy and automotive. Zero third-party JavaScript libraries — no Three.js, no GSAP, no jQuery dependency beyond what WordPress itself provides. An RFQ enquiry form, a one-click demo importer, and a full manual ship with the theme.
Demo photography is honestly partial by design: seven real CC0/public-domain photographs (Wikimedia Commons and NASA’s own image library), each individually licence-verified and checked at full resolution for identifiable faces and legible competitor nameplates, filling seven of the theme’s thirteen capability/part image slots. The other six ship with no photograph rather than an unrelated one, because no honest match existed — every template already renders correctly either way.
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.