atelier-design
warm-glass product UI暖玻璃产品界面Eight of the nine design skills in this repo draw documents — landing pages, pricing tables, docs sites, decks. This one draws applications: sidebars, KPI rows, filter panels, record tables, booking flows, settings forms. Its JavaScript is not decoration, it is half the deliverable. 这个仓库里九个设计 skill 有八个画的是文档——落地页、定价表、文档站、汇报 deck。这一个画的是应用:侧栏、KPI 行、筛选面板、记录表、预订流、设置表单。它的 JavaScript 不是装饰,是交付物的一半。
The five screens五个屏幕
A whole product path, from the front door to the deepest record. Every one of them passes all four review gates and has been looked at by a human. 一条完整的产品路径,从门口一直到最深的那条记录。五个页面全部通过四道机械审查,并且都被人眼看过。
Glass is chrome, opacity is data玻璃是外壳,不透明度是数据
The single rule that keeps this aesthetic readable: the more a surface carries numbers, the more opaque it gets. Only the shell blurs — nesting a second backdrop-filter costs a full filter pass per frame and is invisible at 0.80 alpha. 让这套美学保持可读的唯一一条规矩:一个表面越承载数字,就越往不透明走。只有外壳做模糊——再套一层 backdrop-filter,每帧多跑一整条滤镜链,而在 0.80 不透明度下根本看不出来。
These three sit directly on the wallpaper so the difference is visible — nested inside a card they would all composite over the same opaque base and look identical. Test for yourself: if you can see the wallpaper shifting behind a KPI number, the alpha is too high. 这三格直接压在壁纸上,差别才看得出来——套进卡片里,三者会合成在同一个不透明底上,看起来完全一样。自测判据:如果你能透过 KPI 数字看见壁纸的颜色变化,alpha 就开大了。
Palette配色
White text on the coral stop measures 2.5:1 — it fails AA at every size. That is why the gradient never carries text and filled buttons use the solid deep rose. 白字压在珊瑚端实测只有 2.5:1,任何字号都不过 AA。所以渐变永远不承载文字,实心按钮用的是那个更深的玫红。
Interaction lab — everything below is live交互实验室 —— 下面的都能点
Every behaviour is a data-* attribute on markup. A page written with this skill contains no atelier JavaScript at all. Click things.
每个行为都是写在 markup 上的 data-* 属性。用这个 skill 写出来的页面里一行 atelier JS 都没有。随便点。
Rail routing侧栏路由
data-route
Every pane's markup ships in the page and toggles with [hidden]. Nothing is fetched, nothing is built at runtime — a reader with JavaScript off still has all of it in the DOM.
所有面板的 markup 都写在页面里,用 [hidden] 切换。不 fetch、不在运行时构建——JS 关掉,内容依然全在 DOM 里。
This is the second pane. You did not download it just now — it has been sitting in the HTML since page load, which is exactly the point. 这是第二个面板。它不是你刚才下载的——从页面加载起它就在 HTML 里,这正是重点。
A third. Switching a pane also replays the count-up and grow animations inside it, so a chart revealed by a click still animates. 第三个。切换面板会重跑面板内的数字滚动和条形生长,所以点开才出现的图依然有动画。
Count-up & segmented数字滚动与分段控件
data-count-to
The final string 147,280 is written in the markup. JS animates toward it and then restores the original text — so the comma is never reconstructed and never drifts. The segmented control is decorative on purpose: switching it does not rewrite the figure, because a reference page must not display data it cannot source.
终值 147,280 写在 markup 里。JS 朝它滚动,结束后恢复原始文本——所以千分位逗号永远不会被重建、也就不会漂。分段控件是故意做成装饰的:切换它不会改写数字,因为范本页不能显示查不到来源的数据。
Accordion & switch手风琴与开关
data-accordion
Settings are the screen people change while guessing — and the guess is where the damage happens. A label plus a toggle tells you what it is called. Two lines tell you what happens. 设置是人们一边猜一边改的地方,而伤害就发生在猜的那一刻。一个标签加一个开关,只告诉你它叫什么;两行才告诉你会发生什么。
Sortable table可排序表格
data-sort
| Judy Abbott | Studio | 92 |
| Martin Feeney | Platform | 78 |
| Ellen Streich | Field | 66 |
| Toni Bergstrom | People | 34 |
Click a header. Sorting reads data-value when present, so a cell can display “IDR 28.5M” and sort as 28500000.
点表头。排序优先读 data-value,所以单元格可以显示「IDR 28.5M」而按 28500000 排序。
Charts — one ramp, one neutral track图表 —— 一条渐变,一层中性轨道
Every series figure is the coral→rose ramp over --atl-track. The track is not decoration: without it a 31% bar only reads as “short”; with it, it reads as “31 out of 100”. Second hues are reserved for reference geometry, verdicts, and composition slices — never for series.
所有序列图形都是珊瑚→玫红渐变压在 --atl-track 上。轨道不是装饰:没有它,31% 的柱子只读作「矮」;有了它,它读作「100 里的 31」。第二个色只留给参照几何、判断结论和构成切片——绝不用于序列。
Round-cap bars over a track灰轨道 + 圆头柱
value实际 ceiling上限Area with a reference line面积图 + 参照线
+14
All <text> is painted last. A translucent area fill drawn after a label covers it — that exact bug was caught by the review gate on this skill's own detail page.
所有 <text> 最后绘制。半透明面积填充画在标签之后会把它盖住——这个 bug 就是渲染审查在本 skill 自己的 detail 页上抓到的。
Donut — four slices, hard ceiling环图 —— 四片,硬上限
Four is the ceiling. Past four the arcs stop being comparable and the chart needs a legend to be readable at all — which means it has stopped working. 四片是上限。超过四片弧长不再可比,图必须靠图例才读得懂——那说明它已经不工作了。
Schematic figure & proportion bars示意图与比例条
radial-gradient, so the SVG holds six elements instead of four hundred circles — and the caption admits it is schematic, not a navigation chart.
点阵是 CSS radial-gradient,所以 SVG 里只有 6 个元素而不是 400 个圆点——说明里也直说它是示意图,不是航行图。
Three rules that do not bend三条不可让步的规矩
When NOT to use it什么时候别用它
There are nine design skills in this repo. Picking the wrong one costs more than picking none. 这个仓里有九个设计 skill。选错一个,比不选还贵。
| If you are making…如果你要做的是…… | Use用哪个 | Why not atelier为什么不是 atelier |
|---|---|---|
| A dark aurora-glass showcase page深藏青 aurora 玻璃的展示页 | glass |
Both are glass, but glass is a deep-navy canvas with cyan and light blobs. atelier is daylight, warm, and draws applications.两个都是玻璃,但 glass 是深藏青底 + cyan + 光晕。atelier 是亮底暖色,而且画的是应用。 |
| A landing page, pricing table or docs site落地页、定价表、文档站 | anthropic · apple · sage · ember |
atelier has no hero tier at all. An application has no hero.atelier 根本没有 hero 档。应用没有 hero。 |
| A product launch / keynote产品发布会 / keynote | eclat |
Cinematic dark and full-bleed moments are a different language entirely.暗调电影感和满屏「时刻」是另一套完全不同的语言。 |
| A boardroom review deck会议室商务汇报 deck | lectern |
Gradient orbs read as consumer SaaS. A board pack needs to read as trustworthy, which means low saturation.渐变圆球读作消费级 SaaS。汇报材料需要读作可信,那意味着低饱和。 |
| Anything that gets printed or exported to PDF要打印或导出 PDF 的东西 | any non-glass skill任何非玻璃 skill | backdrop-filter does not enter the print pipeline. The shell would print as a flat white box.backdrop-filter 不进打印管线。外壳会打印成一个白方块。 |
Run the gates before you ship交付前先跑审查
Four gates — structural, rendered, accessibility, screenshot — must all be green. And the screenshot must be looked at: on the day this skill was built, the machine gates passed three problems only a human eye caught. Necessary, not sufficient. 四道审查——结构、渲染、可达性、截图——必须全绿。而且截图必须人眼看过:这个 skill 建成当天,机械审查放过了三个只有人眼能发现的问题。四道审查是必要条件,不是充分条件。
bin/design-review --skill=atelier your-page.html