Changelog
What shipped
Every dated thing on this site, in one place: sites added to the showcase, tools published, lessons reviewed, and releases of the MCP server. Nothing here is typed into copy. Each date is read from the thing it describes, so an entry cannot announce something that did not happen.
Where each date comes from, and what checks it
- 22 showcase sites Read from the showcase row that renders the page; images checks every render it points at.
- 14 tools Read from the tools.js entry the tile renders; tools:test proves this tool still produces output.
- 8 MCP server releases check-llms.mjs fails the build unless this version matches api/mcp.js and the published MCP manifest.
- 7 lesson reviews Read from the lesson page’s own REVIEWED constant, so this date and the one on the lesson are one value.
September 2026 39
-
Decoded: CatNames.com
Coral on white, a rounded display face, and cut-out cats that break their own frames. Every block is a card, the hero cat gets a speech bubble, and the primary action is a swipe rather than a search, which states the whole product in one button.
-
Decoded: Catskills
Two greens and nothing else: deep sage type on a pale olive ground, with Instrument Serif dropping into italic mid-headline to carry the emphasis a bold would usually take. Product photography sits in soft rounded frames, and a guarantee card leans over the hero at an angle, the only thing on the page allowed to be crooked.
-
Decoded: Clico
A serif headline over pale blue-grey, with the product shown as a scatter of its own floating windows instead of one screenshot. The second headline strikes through the word watermark, a rare case of type making the argument rather than describing it.
-
Decoded: Dominik Kostolnik
Condensed caps at full-bleed scale in amber on black, with an equaliser of rounded bars standing in for the work itself. Video stills are sliced into vertical strips like a waveform, and the section titles block in magenta and yellow behind the type. It opens on a gate you have to push through, which is the rare case where the splash screen is the point.
-
Decoded: Don't Look Up
Pencil-line figures at ant scale under two enormous shoes, the whole thing black on bone white with one red line marking what the crowd will carry. A fat comic display face shouts the title while the crowd mutters in speech bubbles, and the only other colour that ever arrives is the yellow of someone who has just noticed your fee.
-
Decoded: HyperSuit
Near-black with one electric blue, photography bled to the edge, and mono telemetry ticking along the bottom of the fold like a readout. The feature row underneath is line icons and two lines each, which is what lets the hero stay as loud as it is.
-
Decoded: Velour Productions
Cream condensed caps at fold-filling scale on near-black, with film stills tucked into the gaps between the letters rather than laid out beside them. A mono caption row runs underneath like a slate, and orange is held back entirely for the mark and the closing panel, where the studio name fills the screen.
-
Lesson reviewed: Colour That Behaves
Choose one colour. OKLCH, color-mix(), relative colour and light-dark() derive the rest.
-
Lesson reviewed: Custom Properties as a System
Three tiers, scoped overrides, the invalid-value trap, @property and style queries.
-
Lesson reviewed: Responsive, Without Guessing
Layout that needs no query, fluid values, container queries, and the viewport last.
-
MCP server 1.6.1: Old property names, corrected
`css_feature` now returns `renamed`: a name the feature shipped under before, and the name to write instead. A model whose training predates a rename writes the old one with complete confidence, and this is the cheapest place to catch it.
-
Decoded: Electronic Materials Office
Sells hardware by switching the lights off: a near-black page where photography of the product is the only illustration, a serif display line over a light grotesque, and the single saturated colour on screen saved for one glowing Reserve button. 26,000px of scroll and twelve inline videos, and not one stock graphic.
-
Decoded: Gyre
Condensed uppercase display type at poster scale on pure black, one hot pink accent carrying every action, and a fur-rendered 3D mark doing the job an illustration usually does. A streaming tool that looks like a record sleeve instead of a dashboard.
-
Decoded: Playback
A paste-a-link hero with the product demonstrating itself directly underneath: two clips side by side, scrubber and all. One red carries the second half of the headline and every action, everything else is black on white, and a handwriting face marks the human asides.
-
Decoded: yank.info
Cream paper, a yellow highlighter swipe behind the second line of the headline, and a hard black shadow under the input: a summarizer that looks like a marked-up page instead of a chat box. The proof sits right under the fold as red quote cards.
-
Lesson reviewed: Centering, decided
Seven situations that share one word. Three questions pick the right answer.
-
Lesson reviewed: CSS Grid
Six words, then ten properties. Draw a layout and get its template areas. Subgrid included.
-
Lesson reviewed: Flexbox
One line of things: six properties for the container, five for an item, and the overflow fix.
-
Lesson reviewed: The Cascade & Specificity
The six tests the browser runs when two rules disagree: layers, specificity, scope and the rest.
-
MCP server 1.5.0: Speaks the 2026-07-28 revision
Both protocol revisions are answered: `2026-07-28` and `2025-06-18`. `initialize` now echoes the revision the client asked for instead of always negotiating down.
-
MCP server 1.6.0: CSS that is accurate for today
New tool `css_feature`: a feature's Baseline status from the web-features dataset, how many of our decoded showcase sites ship it, and the `@supports` conditions they guard it with. With no argument it returns the Ship Gap.
-
New tool: :has() Playground
Six jobs the parent selector took from JavaScript, live on markup you can click.
-
New tool: @property Builder
Type a custom property so gradients and colours animate instead of snapping. Registered and unregistered, side by side.
-
New tool: @scope Playground
A rule that starts at one element and stops at another, so styles never leak into a nested component.
-
New tool: Anchor Positioning Playground
Tether a tooltip to a button in CSS. Drag the anchor to the edge and watch the fallbacks flip it. Output is fallback first.
-
New tool: Colour Studio
Mix colours with color-mix() and compare OKLCH against sRGB, then derive hover, muted and border colours from one brand colour.
-
New tool: Container Query Builder
Build an @container rule and test it in a container you drag. Named containers, range syntax, cqi type.
-
New tool: Easing Studio
cubic-bezier, plus real springs and bounces as linear(), solved from stiffness, damping and mass.
-
New tool: Fluid clamp() Calculator
Type and spacing that scale between two widths. Zoom-safe rem output, viewport or container basis, and a full modular scale.
-
New tool: Keyframes Generator
Ten animations worth using, written with translate, scale and rotate, each with its reduced-motion block.
-
New tool: Logical Properties Converter
Turn left and right into inline-start and end, with a report of every line changed and the ones left on purpose.
-
New tool: Scroll Animation Builder
Reveal on enter with view(), or a progress bar with scroll(). Guarded by @supports and reduced motion.
-
New tool: Specificity Calculator
Rank selectors and see which wins, with :is(), :not(), :has() and :where() scored the way the spec says.
-
New tool: text-wrap Compared
wrap, balance, pretty and stable on your own text, at a width you drag.
-
New tool: View Transition Builder
Crossfades, slides and a named element that morphs between layouts, on one page or across page loads.
-
MCP server 1.4.0: A full DESIGN.md for any URL
New tool `get_design_md_for_url`: roles with provenance, measured contrast, the tokens a site itself declares, type scale, elevation, breakpoints, motion and dark mode.
-
MCP server 1.3.0: Whole-site reads
New tool `decode_site`: reads a sample of pages and reports what is consistent across them. Counts, never a score.
-
MCP server 1.2.0: Decode a live site
New tool `decode_url`: reads a public site’s stylesheets into tokens, with a stated confidence. It reads CSS and does not render.
-
MCP server 1.1.0: Install, rules, verification
New tools `get_install_command`, `get_agent_rules` and `verify_design_md`.
August 2026 1
-
MCP server 1.0.0: Launch
Five tools: `search_themes`, `list_themes`, `get_design_md`, `get_theme_tokens`, `how_to_use`. Free, no account, no key.
July 2026 6
-
Decoded: Mr.Day
Marquee strips of heavy display type alternate with cut-out product shots, so the page scrolls like a moving poster — orange and cyan carry the brand while a “level up” gaming motif runs through the copy.
-
Decoded: KB Cafe
A warm editorial take on developer reference: paper-toned ground, a vermilion accent used only for wayfinding, and type doing the structural work across a large body of documentation.
-
Decoded: Pranksters.com
A near-black stage lit by a single red: highlight blocks set behind the headline, one red primary button, and character art holding the entire right half of the fold.
-
Decoded: SEOAIO
A restrained, near-white SaaS layout with a soft violet primary and a teal counterpoint, built so dense visibility metrics read as calm reporting rather than a dashboard shouting.
-
Decoded: StockTools.ai
A terminal aesthetic done properly: a near-black canvas, one signal-green accent reserved for live data, and a strict grid that keeps dense tables scannable without decoration.
-
Decoded: ThumbCrafted
An image-first tool suite that lets the work carry the page: near-black chrome recedes so the uploaded image and its result stay the brightest things on screen.
June 2026 5
-
Decoded: Framer
Built in the product it sells; the page is the demo, with motion that stays purposeful rather than decorative.
-
Decoded: Lynn Fisher
A site that reinvents its own layout at each breakpoint; the responsive behaviour itself is the artwork.
-
Decoded: Pitch
Presentation software that presents itself: bold type, vivid color blocks, and motion that mimics a live deck.
-
Decoded: Raycast
Keyboard-first personality carried into the page: clean dark sections, real UI clips, and one obvious download action.
-
Decoded: Superhuman
Speed sold through restraint: a confident type-led hero and snappy micro-interactions that reinforce the pitch.
Why each kind names a gate
A changelog asks to be believed. It sits at the one URL nobody checks against the thing it describes, which is exactly why it rots: the release ships, the note stays, and nothing anywhere notices they have drifted apart. Publishing more of them does not fix that. Joining each claim to its artefact does.
So each of the four kinds above carries the sentence that makes it checkable, stated once rather than
repeated under every row, because the check is per kind and printing it per entry would claim more than
is true. The strongest is the MCP server's:
check-llms.mjs refuses to build this site when the newest entry in the changelog data, the
published manifest and the SERVER constant in the running server disagree about the version,
so a release note here cannot describe a release nobody can install. The weakest is a tool's, where the
date is simply the field the tile renders from. They are written differently on purpose. A badge reading
verified over all four would claim the same confidence for both, and only one of them earns it.