跳转至

Open Design 官网效果拆解

open-design.ai1 首页是一套很完整的"纸白 + 黑墨 + 荧光绿 #63fe13"编辑部气质(他们自己管这套令牌叫 Atelier Zero),动效密度很高却全程轻快 —— 秘密在架构上:Astro 静态输出、浏览器端零 React runtime,每个动效都是"服务端渲染好的静态 HTML + 一小段内联增强脚本"的渐进增强,观察器不触发、reduced-motion、脚本挂掉,页面照样完整可读。

这里把首页的 11 个效果逐个拆开,每个复刻成一个自包含单页 demo(无外链依赖,参数照抄官网源码),按首页从上往下的顺序排列:

蓝本

  • 仓库:nexu-io/open-design2,本次拆解钉在 4567a0d53
  • 结构在 app/page.tsx4(构建期 renderToStaticMarkup),样式在 app/globals.css5,全部增强脚本内联在 app/pages/index.astro6
  • 设计令牌规范:design-systems/atelier-zero/DESIGN.md7;官网首页还有一份自包含的 known-good 渲染 design-templates/open-design-landing/example.html8,想整页仿照从它起步最快
  • 动效上游多为 React Bits9(BlurText / Dock / FallingText / Gradual Blur)和 Magic UI(Text Reveal),官网做的是去 React 化的 vanilla 移植 —— 重库(matter-js、cobe)vendored 后由 IntersectionObserver 提前 1.5 屏按需注入

  1. open-design.ai,2026-07-28 读。 ↩

  2. nexu-io/open-design,2026-07-28 读。 ↩

  3. 4567a0d5,2026-07-28 读。 ↩

  4. app/page.tsx,2026-07-28 读。 ↩

  5. app/globals.css,2026-07-28 读。 ↩

  6. app/pages/index.astro,2026-07-28 读。 ↩

  7. design-systems/atelier-zero/DESIGN.md,2026-07-28 读。 ↩

  8. design-templates/open-design-landing/example.html,2026-07-28 读。 ↩

  9. React Bits,2026-07-28 读。 ↩