← The library

Solvane

Marketing site for an AI agent platform

Full template Free Open the demo Download
Preview of the Solvane template: a full-screen pixel-art meadow with a laptop under a tree, the heading “Solvane lets you run an entire company with AI”, and a tilted stack of agent notifications.

0 external requests, 0 dependencies, 0 build steps

769 kB loaded, 685 of it generated pixel art

+0.1% total height against the reference site

What it is

The marketing site of an AI agent platform, complete: a pixel-art hero with its stack of live notifications, a customer bar, an orchestration board, four guide chapters as book covers, four product blocks, a sky-blue section with three tabs, an animated word search and a footer. One page, one HTML file.

The subject of this template is the interface mock-up. The eight product screens it shows — the department wheel, the launch kanban, the agent conversation, the email preview, the campaign report, the analytics dashboard, the task queue, the department row — are all HTML and CSS. There is not a single screenshot in the folder. That is what makes them editable: changing a figure in the campaign report means changing a <dd>.

The design follows that of a commercial site, of which only the structure has been kept. All the code was rewritten: the original shipped a Next.js React bundle, 147 kB of compiled Tailwind, three third-party analytics scripts, and inline styles on every animated block — which a strict security policy blocks outright.

What you change first

The colours — twelve lines

Right at the top of assets/css/style.css:

--accent:        #2b3fc4;  /* fills a surface: buttons, chips, the stroke */
--accent-deep:   #1e2c8f;  /* writes on a light surface, and hovers */
--accent-soft:   #dfe3fb;  /* tints a chip, never text */
--surface:       #f5f5f2;  /* the page */
--sky:           #0756d0;  /* the blue the illustrations are painted in */

One thing to grasp before touching anything else: there are three indigos, not one. The solid accent carries white at 8.04:1; the deep one writes on the page at 10.61:1. Over the pixel-art sky you write in white (6.46:1) and never in a lightened accent, which would not reach 3:1 there. Change one, change all three.

The name

Search for “Solvane” in index.html. No CSS class carries the brand name: a find-and-replace can't break anything.

The word search

The grid of letters and its eleven strokes are produced by _mesures/grille-mots.py, from a fixed seed. Change the list of trades at the top, run it, paste back the HTML and the grid-area rules it prints.

The twelve effects, and how they're built

The reference site writes all of its animations in CSS — 36 @keyframes, no animation-timeline. They were therefore read out of its stylesheet to the millisecond rather than estimated by eye.

EffectWhereHow
Scroll reveal26 blocksIntersectionObserver, firing 15% up from the bottom of the screen
Notification stackheroa 520 ms spring, 140 ms apart, in a 300 px perspective
Readability veilheroa single gradient, horizontal on desktop, vertical on mobile
Logo loopcustomer bar20 s linear, a cloned row, below 767 px only
Answer being writtenorchestration boardthree ghost blocks rising 6 px, at 0 / 400 / 800 ms
Packets on the wiresorchestration boardstroke-dasharray: 4 96 on pathLength="100"
Chart lines drawinganalyticsdashoffset 100 → 0 in 1.4 s, three lines 160 ms apart
Book stackguidetwo ::before / ::after sheets, lifted on hover
Tabssky sectionnative radios, read from the ancestor with :has(); the script only adds the 7 s rotation
Word search strokeindustriesa rounded <rect> with pathLength="1000", drawn in 1020 ms
Letters lighting upindustriesthey follow the pen, 800 ms spread across the word
Menu openingmobileclip-path: circle(0% → 180% at 100% 0), 520 ms

What you should know

  • No external requests. Measured at 390, 1440 and 2560 px: every request is local. The original loaded three analytics domains.
  • Scroll reveals can't hide the content. The hidden state only exists once the JavaScript has run. Checked by disabling it: 15 headings out of 15 stay visible, the three tab panels follow each other down the page, the eleven word-search strokes are drawn.
  • Zero inline styles, zero inline scripts. The template honours the site's strict security policy — the very one the original's style="--notif-rotate-y:-12deg" breaks. The _headers file carries the policy and the bench serves it, so the page is measured exactly as it ships.
  • Every pixel-art illustration is generated, and therefore free of rights. None of the original's images survive.
  • Accessibility: skip link, menu state announced, decorations hidden from screen readers, one visible focus ring drawn outside the box, animations switched off if the system asks — delays included.
  • Responsive checked at 390, 1440 and 2560 px, on load and after scrolling all the way down, with no horizontal overflow.

What isn't perfect

Better said here than left for you to find out.

  • The hero no longer moves. The original played a 280 kB looping video there. Measured frame by frame, it changed 4.56% of its pixels — a breeze in the grass. It is replaced by a still image at the same framing; what gives the hero its life is the notification stack arriving card by card.
  • Below 992 px the mock-ups scroll instead of overflowing. The cards that float above them on a wide screen return to the flow and stack underneath. That accounts for most of the height difference on mobile: 4,856 px against the original's 3,684, which simply hides part of them.
  • The “Download full guide” button is gone. It served a 12.5 MB PDF. It now points down to the four chapters.
  • The hero notifications say something invented. The original's are injected by its React bundle and do not exist in the served HTML: there was nothing to read.
  • The secondary pages — pricing, resources, four guide pages, careers — became anchors of the single page. No link leads to a 404.

Take it, open it, break it.

Solvane is free. The full library — the other templates and the components — comes with the subscription, alongside the course.

Immediate access · No commitment · Cancel in one click