首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >借助 CodeBuddy,我打造了一个打光动画加持的代码演示工具

借助 CodeBuddy,我打造了一个打光动画加持的代码演示工具

作者头像
繁依Fanyi
发布于 2025-05-18 00:34:38
发布于 2025-05-18 00:34:38
13100
代码可运行
举报
运行总次数:0
代码可运行

我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴

初衷:我需要一个「会动的」代码演示工具

平时写博客或者准备组件文档时,总会遇到一种场景:我希望一边展示代码,一边让读者实时看到运行效果。如果能有个小工具,左边输入代码,右边立即展示预览,再加上一点视觉动效和主题切换,那就完美了!

于是,我跟 CodeBuddy 提了个请求:

我要用 Vue3 + Prism.js + iframe 制作一个代码演示工具 CodeMotionShow,支持: 左侧代码编辑(HTML/CSS/JS),右侧同步预览,多主题切换,打字动画效果,一键导出!

我本以为这个任务得我来一行一行搭结构,写逻辑,调样式。结果——完全不是这样。

CodeBuddy 没有建议我怎么做,而是直接接过活,开始从零实现整个项目。接下来的每一步,都是它在主动推演、构建,而我只需要跟着它的节奏走。


项目搭建:CodeBuddy 从零构建 Vue 应用

第一步,CodeBuddy 用 Vite 创建了一个 Vue3 项目:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm create vite@latest . -- --template vue

并选择了 JavaScript 版本,而不是 TypeScript,这对快速开发非常友好。紧接着,它立刻安装了 Prism.js:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install prismjs

我几乎没怎么插手,所有依赖管理、项目初始化和结构清理都是它一手包办的。此时目录已经干净整洁,准备进入开发状态。


编写核心组件:一个左编右显的动效编辑器

CodeBuddy 先创建了一个名为 CodeEditor.vue 的组件,里面实现了:

  • 三个可切换的文本框(HTML、CSS、JS)
  • 每次输入都触发打光动画
  • 使用 Prism.js 高亮当前代码块
  • 实时将代码同步给 App.vue 页面主组件

这部分代码结构清晰,逻辑职责分明,尤其打光动画的实现非常巧妙:每次输入文字时,它通过添加一个特殊 class 再触发过渡动画,模拟了类似终端打字时的高光效果。


页面布局与实时预览:iframe 的魔法时刻

在主组件 App.vue 中,CodeBuddy 构建了左右布局结构,左边是代码编辑器,右边则嵌入一个 iframe,用来实时展示运行效果。

每当我在编辑器里敲下字,右侧 iframe 就立即更新页面。实现这一点的方式也很优雅:它通过动态组合 HTML、CSS、JS 内容,然后拼接成完整的 HTML 字符串,再传给 iframe。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const fullHtml = `
  <html>
    <head><style>${cssCode}</style></head>
    <body>
      ${htmlCode}
      <script>${jsCode}</script>
    </body>
  </html>
`;
iframe.srcdoc = fullHtml;

简洁、直观、无需刷新页面。CodeBuddy 不仅实现得快,还特别注重体验细节。


多主题切换:支持 Atom、Dracula 和 Nord

为了让代码展示更炫,CodeBuddy 又主动安装了 prism-themes

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install prism-themes

并在编辑器中添加了主题切换按钮。我点击不同主题,编辑器代码区会即时替换样式,仿佛穿上了不同的皮肤。整个切换过程丝滑流畅,不会闪屏或卡顿。


动效实现与样式打磨:真正「动起来」的代码

为了突出动效特色,CodeBuddy 在 style.css 中加入了专门的「打字动画」样式,通过 @keyframes 控制发光:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@keyframes glow {
  0% { background-color: transparent; }
  50% { background-color: rgba(255, 255, 255, 0.1); }
  100% { background-color: transparent; }
}
.line-glow {
  animation: glow 0.6s ease-in-out;
}

每次我打字时,对应的行就会「闪」一下,类似高亮点播。这种视觉反馈在演示教学时特别有效,让读者一眼就能看出修改了哪一行。


一键导出:生成可嵌入博客的独立 HTML 页面

最后一个功能,CodeBuddy 也没有让我失望——它在编辑器旁边加了一个按钮:「导出演示页」。我点击一下,就会下载一个完整的 HTML 文件,包含当前所有代码和样式。

这个文件我可以直接嵌入博客,或者部署到任何静态页面里,真正实现了「所见即所得」。


尾声:我只提了个需求,其余 CodeBuddy 全包了

整个过程,我几乎没有写一行代码,只是把我想要的功能用一句话讲清楚:

我要一个打光动画代码演示工具。

结果,CodeBuddy 给我实现了:

  • 清爽干净的 Vue3 项目结构
  • 可编辑的 HTML/CSS/JS 三栏编辑器
  • iframe 实时预览的逻辑组合
  • 多主题切换的完美集成
  • 打字时的高亮动效
  • 一键导出的博客嵌入支持

更重要的是,它写的代码不仅跑得起来,而且结构非常清晰,易于维护和扩展。模块划分合理,注释清楚,样式和逻辑分离到位,组件复用性也很高。

作为开发者,这是我理想中的「辅助开发」体验:不是教我怎么写,而是代替我写,而且写得比我还好。


🏁 总结:CodeBuddy,不只是助手,而是搭档

这次 CodeMotionShow 的开发经历,让我真正意识到 CodeBuddy 的强大。它不是一个提示我怎么做的工具,而是一个主动思考、主动实现、主动优化的开发搭档。

它不仅理解我的需求,还能将需求转化为实际、优雅、高质量的代码实现。而我所要做的,就是跟它说一句话——剩下的,就放心交给它。


如果你也想尝试 CodeBuddy 实现复杂交互式工具,不妨动动手,向它提个要求,也许下一个惊艳的作品,就是你和它共同完成的。

—— 完 ——

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
借助 CodeBuddy,我打造了一个打光动画加持的代码演示工具
有时候在写博客或者整理项目文档时,我总会遇到这种情况:想让别人看到代码的同时,也能马上看到运行效果,最好还能加点动画、换个配色,看起来更有感觉。
繁依Fanyi
2025/05/17
1230
CodeSnippetBox:我与 CodeBuddy 合作打造的代码片段管理器
平时在开发过程中,我经常会遇到一些「值得保存」的代码片段:有些是我写得不错的函数封装,有些是 StackOverflow 上的绝妙解法,还有些是项目中复用率极高的 UI 组件。起初我用的是简单的 Markdown 文件加 Gist 来管理,但久而久之就乱套了——没有分类、无法高亮、不支持搜索,更别提什么导出了。
繁依Fanyi
2025/05/19
1290
CodeSnippetBox:我与 CodeBuddy 合作打造的代码片段管理器
打造动效按钮平台 ButtonCraft:我和 CodeBuddy 的协作旅程
在最近一次的开发灵感中,我突发奇想:要不做一个专门展示各种高级按钮动效的平台吧?这个念头一冒出来,我就立刻在 CodeBuddy 里输入了这样的 Prompt:
繁依Fanyi
2025/05/17
590
构建 TypoView:一个富文本样式预览工具的全流程记录
在一次和 CodeBuddy 的日常交流中,我提出了一个构想:能不能帮我从零构建一个富文本样式预览工具?我希望这个工具不仅能渲染 Markdown,还能模拟真实出版物的排版风格,比如极简主义、报刊、读书笔记等,最好还能支持一键切换排版样式,甚至导出 PDF 或网页代码。
繁依Fanyi
2025/05/18
950
CodeSnippetBox:我与 CodeBuddy 合作打造的代码片段管理器
平常做项目,经常会有一些值得留存的代码:有的是自己调试出来的封装逻辑,有的是从论坛或博客里翻到的思路,有的则是 UI 组件写得太顺手,想着后面复用一下。
繁依Fanyi
2025/05/18
820
打造「ListLab」:一场由 CodeBuddy 主导的清单工具进化之旅
在日常生活与工作中,我经常需要一个好看、顺手又能导出的清单工具。但市面上的 ToDo 应用大多要么功能单一,要么颜值平平,难以满足我的设计审美。于是我萌生了一个想法:不如用 UniApp 自己开发一个名为「ListLab」的单页清单工具——它不仅支持添加、编辑、拖拽、导出等操作,更要在视觉上提供玻璃拟态、纸张风、极简暗色三种主题。为了更高效地实现这个目标,我请来了 CodeBuddy。
繁依Fanyi
2025/05/19
1230
SVGPlay:一次 CodeBuddy 主动构建的动画工具之旅
SVG 图标的动效设计一直是我比较感兴趣的一块。像描边动起来、颜色能渐变、用户一 hover 图标就有反应——这些元素都能让 UI 多一点“呼吸感”。不过真要自己一个个去搞,其实挺麻烦的。SVG 的操作不算简单,动画又牵涉到时序、触发器,导出还得考虑兼容性,光想就感觉是个坑。
繁依Fanyi
2025/05/17
690
我与 CodeBuddy 一起打造 ChronoFlow:一个极简时间轴可视化工具
作为一个平时经常要整理项目资料和进度的人,我总觉得,用纯表格或者文档记录时间线太没“画面感”了。那种一眼扫过去、能看到整个流程的工具,我找了好久也不太满意。后来想想,干脆自己做一个。想法其实我很早就有了,连名都想好了,叫「ChronoFlow」——有点像“时间流”,听起来也挺有节奏感。
繁依Fanyi
2025/05/18
800
Animaster:一次由 CodeBuddy 主导的 CSS 动画编辑器诞生记
那天我突然想到,如果能有一个简单好用的 CSS 动画编辑器,既能拖拽组件设置关键帧,又能实时预览并导出 CSS,那该多好!尤其是当我在学习 @keyframes 和动画曲线的时候,市面上总缺少一个风格够炫、交互够顺畅的可视化工具。
繁依Fanyi
2025/05/17
1090
借助 CodeBuddy 打造我的图标预览平台 —— IconWiz 开发实录
这段时间我在做前端 UI 设计时,常常需要到处找图标素材,复制代码、转换 SVG、换库来回切换,非常麻烦。于是我突然有个念头:能不能自己做一个小型图标预览平台?整合几个主流图标库,支持搜索、预览、复制,而且还能自定义颜色和尺寸,那可太方便了!
繁依Fanyi
2025/05/17
1020
我与 CodeBuddy 携手打造 FontFlow 字体预览工坊
有时候,一个想法萌生的瞬间,就是一次探索的开始。那天我脑中突然闪过一个念头:能不能做一个在线字体预览工具? 它可以导入 Google Fonts、本地字体文件,自由输入文字并实时预览,还能调整字距、字重、行高、字号,甚至收藏喜欢的字体组合并导出配置。界面上嘛,最好是极简暗色系、带点现代感的卡片布局。于是我把这个想法一口气抛给了 CodeBuddy。
繁依Fanyi
2025/05/17
1010
我与 CodeBuddy 共创 EmojicodeLab 了一个轻松有趣的 Emoji 文本编辑器
有时候,一个简单的想法就能点燃整个项目的火花。那天午后,我突然萌生了一个主意:能不能做一个轻量的编辑器,用户可以像拼积木一样,把 Emoji 和文字拖进画布里,自由排版、搭配样式,甚至还能一键导出成图片或代码片段,日常聊天、发帖、做海报都用得上。于是,我立刻对 CodeBuddy 发出了请求:
繁依Fanyi
2025/05/17
760
CodeBuddy 打造响应式测试平台:ScreenLab 的诞生记
在日常开发中,经常要调试网页在不同终端的显示效果。尽管浏览器 DevTools 有设备模拟器,但使用起来总觉得不够直观,尤其是在演示或展示项目时,切换和自定义不太方便。
繁依Fanyi
2025/05/17
900
【CodeBuddy】从0到1,打造一个“牛马打鸡血仪”
(1)打开网站:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴,点击免费使用
LucianaiB
2025/05/20
1202
【CodeBuddy】从0到1,打造一个“牛马打鸡血仪”
用 CodeBuddy 打造 UniApp 精品“设置”页:从 Profile 按钮到全分离工程化实践
在完成了首页、个人中心、分类、详情等核心页面后,我意识到「设置」页是用户体验闭环中不可或缺的一环。用户期待在这里管理账号、切换主题、调整阅读偏好、开启通知乃至一键退出。于是,我决定和 CodeBuddy 再次配合,既要快速落地功能,又要践行工程化思想——把 JS、CSS 从 Vue 文件中分离出来,让后期维护更便捷。
繁依Fanyi
2025/05/13
1100
FauxGen:一款由 CodeBuddy 主动构建的假数据生成器
在前端开发中,经常需要一些「假数据」来模拟真实接口,便于开发阶段的界面构建和功能测试。与其每次手写几组 mock 数据,不如直接构建一个灵活好用的假数据生成工具,于是我便想到了这样一个项目构想:
繁依Fanyi
2025/05/17
1060
借助 CodeBuddy,我见证了一款在线代码格式化神器的诞生
有时候,我们开发者真的需要一个既高颜值又实用的格式化工具来处理 JSON、HTML、CSS、JavaScript 等代码片段。于是我向 CodeBuddy 提出一个大胆的请求:“我想要一个 Vue3 + Monaco Editor 打造的在线格式化平台 FormatForge,它要看起来专业,操作简单,还要有那种灰蓝配色和毛玻璃背景的氛围感。”
繁依Fanyi
2025/05/16
1100
EmoBox:我与 CodeBuddy 共创的 Emoji 表情分类小工具
最近我萌生了一个想法,想做一个小而美的工具——一个叫「EmoBox」的 emoji 表情分类应用,采用轻拟物风格,设计上注重视觉细节和趣味交互,适合移动端使用。项目虽小,但细节不少,我决定用 UniApp 来实现它。而这一次,我几乎没有自己写代码,而是依赖了 CodeBuddy 全程辅助完成,每一个组件、每一个动效,甚至连项目结构的构建,都是 CodeBuddy 主动安排的。
繁依Fanyi
2025/05/19
1060
用 CodeBuddy 打造创意 Loading 动画生成器:只需三个词,就能玩出花来!
说出来你可能不信,我最近做了一个“Loading 动画生成器”,但过程完全没有动手写 CSS ——我只说了三个词:
不惑
2025/07/04
1470
用 CodeBuddy 打造创意 Loading 动画生成器:只需三个词,就能玩出花来!
借助 CodeBuddy,我轻松打造了图像滤镜工厂
说来也巧,我一直想做个“好玩又实用”的小项目——后来就和 CodeBuddy 一起折腾出了 PixelMancer,专门干图像滤镜这摊子活。整个过程完全不一样:我只负责提需求,它负责把框架、代码都给我搭好,像是有个随喊随到的开发搭档。
繁依Fanyi
2025/05/16
780
推荐阅读
相关推荐
借助 CodeBuddy,我打造了一个打光动画加持的代码演示工具
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验