Atomiton

AI Creative Challenge 2026 · Entry 13 · AI notes

How this homepage was built, and where I overruled the AI.

I run the engineering team that is competing in this challenge, so this entry is hors concours: it is judged on the same rubric but takes no prize. Its job is to set a bar and to document a workflow the team can refer to.

Entry
13 of 13, hors concours (Director of Engineering, Atomiton Vietnam)
Deliverable
One live homepage (desktop and mobile), this notes page, a 3-minute demo
AI tools
Claude (research, build, QA), Claude's browser for reading atomiton.com, Three.js r128, Google Fonts
Content rule
Public atomiton.com content only: the homepage copy as the skeleton, published case-study figures labelled as such, the data center page for the sector anchor. Nothing leaves this page. Nothing internal, nothing invented.
Hosting
Static files, no backend, no build step

1. What the brief actually rewards

The score is 35 visual, 25 UX, 20 AI use, 15 content, 5 reliability. Two readings matter. First, 60 of 100 points are about the experience, so one strong opening moment is worth more than ten decorated sections. Second, the AI-use score is about judgment, not volume: the rubric says "bring your judgment", so the notes have to show what the AI proposed and what a human changed.

Reliability is only 5 points, but a broken link or a page that fails on a phone also costs UX and visual points on the day. I treated it as a gate, not a 5-point line item.

2. What I built

3. Workflow

StepWhat happenedWho did what
Read the briefExtracted rubric, deliverables and constraints from the deck, including the presenter notes.AI read, I decided the reading in section 1.
Inventory the public contentOpened atomiton.com in a browser (the site renders with JavaScript, so a plain fetch returns an empty body), captured the homepage, the data center solution page, the impacts index and all five case studies. Listed every claim with its URL.AI collected, I chose what goes on the page.
Study the referenceReviewed higgsfield.ai and the current Claude plus Higgsfield motion-site workflow (scroll-scrubbed video, sticky stage, parallax layers, keyframe re-encode, canvas frame sequences).AI researched, I picked the technique to borrow and the one to replace.
Set the directionDark green ground, one bright accent, condensed grotesque, spec-sheet sections. Decided the opener would be a live scene, not a video.Mine.
BuildOne HTML file, one notes page. Three.js scene, scroll logic, responsive layout, forms without a backend.AI wrote the code from my instructions; I reviewed every section against the source inventory.
QAHeadless renders at 320 to 2560 px, console clean, no horizontal overflow, every in-page link and inert item checked, every number re-read against its source page, a search for characters and patterns I do not allow.AI ran the checks, I read the results.
Review roundsAfter each round of my screenshot feedback, separate AI roles worked in parallel: a head of product checked that each figure says what the copy says, designers built competing prototypes and rendered them at 1440 and 390, a director role chose one against the rubric with written conditions, and an engineer role ported it and re-ran every check. A final round had four independent reviewers score the page and a director turn their findings into a ranked fix list, which the engineer role worked through and re-checked. I judged every round on the renders, not on descriptions.AI proposed, built and checked; I set the bar and made every call.

Most of the time went to reading sources and checking renders, not to typing code.

4. The prompts that mattered

01Read the deck. Give me the rubric as numbers, the deliverables, and what the presenter notes add that the slides do not say.Starting with the scoring, not with the design, decided everything after it.
02Open atomiton.com in the browser, not a fetch. Inventory every public claim, number and link on the homepage, the data center page and every case study, with the URL for each.The fetch returned metadata only. The browser returned the real page.
03Research how teams build animated sites with Claude and Higgsfield. Tell me the actual technique, the file sizes, and the failure modes, not the marketing.Answer: baked frame sequences on a canvas, heavy but simple. That is what I expected most entries to do.
04Build the opener as a live Three.js scene scrubbed by scroll: aisle, zone, site, enterprise. Same sticky-stage interaction as the video approach, no video file. Include fallbacks for no WebGL and reduced motion.The one risk in the entry, taken on purpose.
05Public content only. No internal product names, no customer facts beyond what the site publishes, no invented statistics. If a number cannot be traced to a page, it does not go in.This removed two things the AI had drafted. See section 5.
06Dark green, one accent, no cards, no gradients, no left accent bars, no emoji, no em dashes anywhere in the code or the copy.House rules. They keep the page from looking generated.
07Render desktop and phone headlessly, scrub the hero at four positions, report console errors and horizontal overflow. Then open every link and confirm where it lands.Checks are cheap when the AI runs them. Not running them is the expensive option.

5. Where the AI was wrong, and what I changed

  1. It reached for internal names. The first content draft referred to internal product names that do not appear on atomiton.com. Removed. The brief says public content, and a public page is not the place for internal vocabulary.
  2. It wanted to hotlink the customer logos from the Atomiton CMS. Replaced with text wordmarks. Hotlinks break when a CMS path changes, and redistributing third-party logos from a concept URL is not a decision a contest entry should make.
  3. It would have copied a duplicate. While inventorying the case studies, the Arboris steam page turned out to carry exactly the same figures as the Vopak Savannah steam page (19 percent gas, 1,110 tonnes CO2e), most likely a content error on the site. The page shows the steam figures once, under the Vopak Savannah source page only; the duplicate on the site is still worth fixing, and I will flag it to the site owner.
  4. It defaulted to black and acid green. That combination is now the recognizable look of generated pages. Shifted the ground to a deep green and kept the accent for one job: measured, healthy, live. Amber is reserved for what is wrong today (hot spots, gaps, late insight, a deviation) so the two colors carry meaning.
  5. It used mailto and tel links as if they always work. In sandboxed previews they often do nothing. The email and phone are now selectable text with a copy button, and the form composes a message on submit instead of pretending to send one.
  6. Its headline collided with the scene. At laptop widths the end of INTELLIGENCE ran into the bright corridor on the right. Reduced the headline scale and pushed the scene further right at the start of the scroll, so the copy always sits on the dark side.
  7. It put a 100 percent viewport hero under a sticky header, which cut the bottom of the first frame by the header height on every device. Fixed the header and reserved the space.
  8. Its stat tiles mixed one-line and two-line captions, so numbers in the same row sat at different heights. Changed to one stat per row with a shared baseline.
  9. It left the enterprise view fogged. The fog that makes the aisle feel deep also hid the far sites at the end of the scroll. Fog density now falls with the camera's climb.
  10. Its first barriers figures explained data with geometry. Two rounds of abstract diagrams (planes, then shadows on glass) read as decoration; I asked for a real place, and the figure became a simulated tank terminal where three tools each see their slice.
  11. It put the capabilities on a chart behind glass. That is a dashboard widget; the cycle now runs as a camera tour of the same site, one change carried from Monitor to Plan.
  12. Its reviewers marked inert links and the disabled Confirm as blockers. Both are deliberate in a homepage-only demo; I kept them and asked for them to read as intentional instead of broken.
  13. Its reviewers scored the figures too small in their frames. The fix was one shared camera fit and one label system across the three scenes, not new effects.

6. Verification

7. Source map

Claim on the pageSource
Immersive Intelligence, the four outcomes, the introduction, the Energy Business Review recognition, the three barriers, the six capabilities, the five sectors and their descriptions, the contact form fieldsatomiton.com/home
Customers shown: Vopak, AB InBev, Chevron, McDermott (four of the eight names on the homepage strip)Logo strip on atomiton.com/home
Footer items (Knowledge Hub, legal and social links)Header and footer of atomiton.com/home
Phone, email, Schedule a call (a 30-minute meeting on the live site; the inline booking here is a simulation of that flow)Footer and call button on atomiton.com/home
Vopak: 32% Scope 2 CO2e reduction, 35% reduction in electricity use, 29% lower cost of utilityElectricity Management
Chevron: 254,309 t CO2e averted, 15% fewer transport miles per unit delivered, 18% reduction in logistics costTransport & Distribution Optimization
AB InBev: 22% reduction in tank water use, 18.5% reduction in nozzle water useWater Stewardship
Vopak Savannah: 19% natural gas saving, 1,110 t CO2e avertedSteam Optimization, Heating
Data centers: the five capabilities listed in the sector gridatomiton.com/solution/data-center
Hero level captionsEditorial, written for this concept
Section headings and one-line introsEditorial, written for this concept; they make no claim beyond the source lines they introduce
Site 01 and every figure in the barriers and capabilities scenes, the booking slotsSimulated, no source; labelled Simulated on the page
Logo and A markSupplied by the entrant, recolored for a dark background; the A mark also sits in the favicon and at the centre of the recognition seal

8. If you want the Higgsfield version

The scene is a drop-in slot. To replace it with a generated clip, follow the pipeline the current playbooks use:

  1. Generate a 6 to 8 second clip with one continuous camera move and no cuts, for example a slow pull-back from a server aisle to a view above a data hall. Use a still as the start frame for control.
  2. Re-encode so every frame is a keyframe, which is what makes scroll scrubbing smooth:
    ffmpeg -i clip.mp4 -an -vf "scale=1600:-2" -c:v libx264 -x264-params keyint=1:min-keyint=1 -pix_fmt yuv420p hero.mp4
    ffmpeg -i hero.mp4 -frames:v 1 poster.jpg
  3. Keep the sticky stage and the scroll-progress logic. Map progress to video.currentTime inside a requestAnimationFrame loop with easing; never set it directly in the scroll event, and wait for loadedmetadata before reading the duration.
  4. Keep the poster and the reduced-motion path. On phones, play the clip on a loop instead of scrubbing.

Budget for it: a clip of that length at 1600 px is 10 to 30 MB as a frame sequence, or 3 to 8 MB as keyframe video. The whole homepage is about 298 KB of HTML, the three live scenes, the SVG fallbacks, logo and favicon included, with no media files; Three.js loads from a CDN as the opener already did.

9. Rules I would set for every entry