前两天写文章分享了Codex 入门最佳实践,反响很不错,一句话:学习codex最好的地方就是OpenAI的官方codex文档
https://developers.openai.com/codex
今天分享如何用codex 构建响应式前端设计
https://developers.openai.com/codex/use-cases/frontend-designs
截图扔进去,代码自己出来
Codex中专门用来解决前端开发里最耗时间的事:把设计图变成可以跑起来的代码。
你只需要把截图、设计稿、或者任何能说明UI长什么样的参考材料丢给Codex,告诉它你想实现什么,它来负责把这些视觉信息转成具体的代码实现。
官方给出了一套完整的起始提示词
在当前项目中,根据我提供的截图和说明实现这套UI。
要求:
复用已有的设计系统组件和设计变量。把截图转化为项目里实际使用的工具类、组件封装、颜色系统、字体规范、间距变量、路由方式、状态管理和数据请求模式,不要另起炉灶搭一套平行体系。间距、布局、层级关系和响应式表现要尽量贴近截图。遵循项目已有的路由、状态和数据请求规范。页面在桌面端和移动端都要响应式适配。如果截图里有模糊的细节,选最简单的实现方式,同时简短说明你的判断依据。
验收标准:
对照截图检查最终UI的外观和交互是否一致。用Playwright互动技能打开真实浏览器,与参考截图逐一比对,反复迭代直到结果吻合。
这段提示词的设计思路:先定要求,再定验收方式。验收不是靠人眼检查,而是让Codex自己用Playwright打开浏览器,和截图比对,发现不对继续改。
和Playwright联动,自动对比、自动修改
这套流程里有个关键配件:Playwright这个skill工具。
先在codex安装一下技能:
Codex用它直接打开一个真实的浏览器,把生成的UI界面和你提供的参考截图摆在一起比。不同屏幕尺寸都能检查,手机端还是桌面端,改到哪儿了一目了然。发现不对的地方,继续迭代。
这样一来,验收标准就不是"代码能跑",而是"看起来和原稿一不一样"。
给Codex的材料越丰富,结果越准
一张截图可以起步,但只有一张截图,Codex能猜的地方就多了。
最好的情况是把多种状态都覆盖到:桌面端的样子、移动端的样子、鼠标悬停是什么效果、选中状态长什么样、数据为空时怎么展示、加载中的状态是什么。
这些参考材料不需要是专业设计软件导出的精确稿,粗略的草图或者截图都行,关键是让Codex对间距、层级关系、整体方向有清晰的认知,不用靠猜。
要想结果不一般,描述就得不一般
有一点需要注意。
Codex默认倾向于生成高频出现的通用样式。如果你不额外说明,出来的东西很可能看起来和其他AI生成的UI差不多,比较平。
如果想要有设计感、有特色的结果,就需要在交互方式和视觉风格上多说几句,或者提供更多参考图。输入越具体,输出越有辨识度。
已有项目和从零开始,有点不一样
如果是往已有代码库里加新功能,Codex通常能自己读懂项目里已经在用的组件和设计规范,然后顺着这套体系来写,不会另起炉灶搞一套新的。
如果是从零开始建项目,这个前提就不存在了。这时候建议主动告诉Codex:按钮、输入框、卡片、标题这些基础元素用哪些,颜色和间距的变量在哪里定义,路由和数据请求按什么模式来写。
不管哪种情况,有个原则是一致的:截图里的视觉目标要实现,但实现方式要用项目本身已有的那套工具,不要在外面再搭一层平行体系。
第一次不是终点,来回跑几轮才正常
对于布局简单的页面,Codex一次就能给出方向基本正确的结果。
复杂的布局、动效、多种交互状态叠加的情况,就需要多轮调整。这时候可以追加截图,或者用几句话说明哪里还不对,引导Codex继续改。
遇到冲突时有个优先顺序:优先保留项目设计系统里的规范,在这个基础上做最小幅度的间距和尺寸调整,去还原目标设计的整体感觉。
--end--
最后记得⭐️我,每天都在更新:如果觉得文章还不错的话可以点赞转发推荐评论
/...@作者:你说的完全正确(YAR师)