🎨 CodeMuse——视觉故事与调色板工作室
微软代理联盟2026-创意应用轨道(战斗#1) 一种滚动驱动的视觉体验,融合了生成艺术、品牌调色板生成、ASCII艺术导出和MCP服务器,为GitHub Copilot提供了创造性的超能力。
   
______________________________________________________________________
✨ 什么是CodeMuse?
CodeMuse是一个 视觉故事和调色板工作室 --创意平台,其中:
- 这 天空真的变了 当你滚动(夜→ dawn → day → 日落),由实时Canvas背景引擎驱动
- 7种生成艺术算法 使用交互式控件实时渲染
- A. 设计助理 从项目氛围中生成确定性的调色板和徽标/布局创意
- 任何画布艺术品都可以 导出为ASCII艺术 具有可配置的字符集
- 一 MCP服务器 6个工具赋予GitHub Copilot视觉创意能力
🌗 涡旋驱动天空发动机
当您滚动时,整个页面背景会随着时间的推移而变化:
| 滚动 | 阶段 | 视觉 |
|---|---|---|
| 0–25% | 夜 | 深空蓝色,满星星和星座线 |
| 25–50% | 黎明 | 星星褪色,温暖的玫瑰色/琥珀色地平线发光 |
| 50–75% | 日 | 柔和的蓝天渐变,没有星星 |
| 75–100% | 日落 | 金色到紫色渐变,星星重新出现 |
🖼️ 生成艺术画廊
HTML5 Canvas上渲染的七种实时算法 悬停以显示算法细节:
| 艺术品 | 数学 | 技术 |
|---|---|---|
| 🌊 流场 | Perlin噪声→ 矢量角 | 沿噪声流矢量的粒子平流 |
| ✨ 宇宙星云 | F=G·m/r² | 具有拖尾衰落的N体轨道动力学 |
| 🌳 活分形树 | L → L·比值 | 风扰动下的深度限制递归 |
| 🎵 波的干涉 | sin(ωx+φ)叠加 | 具有相位偏移的多层正弦干扰 |
| 🚀 超空间恒星 | 比例=f/z | 3D→2具有视差速度的D投影 |
| 🎯 Spirograph发动机 | (R−r)cos(θ) + d·cos((R−r)θ/r) | Epicycloid 参数曲线追踪 |
| 🔮 数字曼荼罗 | θ=2π/n | n倍呼吸半径径向镜像 |
每件艺术品都有以下特点:
- 实时画布渲染 60fps
- 悬停覆盖 揭示算法名称、数学公式和技术
- 交互式参数控制 (滑块用于实时调整)
- 源代码查看器 复制到剪贴板
- PNG导出 和 ASCII艺术输出
🎨 设计助理
一个内置的品牌识别工具,可以生成:
- 调色板 (5种颜色,带十六进制代码、名称和CSS变量)
- 徽标和布局建议 (每个氛围3个概念)
- 氛围:大胆、冷静、科技、俏皮、极简、宇宙
所有确定性-不需要外部API密钥。
⣿ ASCII艺术导出
将任何实时画布艺术作品转换为ASCII艺术:
- 可配置的列/行(20-200列)
- 通过亮度将亮度映射到字符
- 复制到剪贴板或下载为
.txt
🔌 GitHub Copilot的MCP服务器
A. 模型上下文协议服务器 随着 6个创意编码工具:
| 工具 | 说明 |
|---|---|
generate_art | 7种风格的完整、可运行的生成艺术代码 |
create_color_palette | 和谐的调色板(暖色、冷色、霓虹色、粉彩、赛博朋克、单色) |
creative_challenge | 带有提示和起始代码的创造性编码挑战 |
code_to_animation | 来自自然语言的CSS、Canvas或SVG动画 |
suggest_brand_scene | 品牌调色板、背景场景和排版,营造任何氛围 |
ascii_style | ASCII艺术字符集、密度设置和转换代码 |
______________________________________________________________________
🚀 快速开始
先决条件
- 18+
- VS Code 随着
运行Web应用程序
# Clone the repository
git clone https://github.com/kagithamanoj/CodeMuse.git
cd CodeMuse
# Install dependencies
npm install
# Start the development server
npm run dev打开 http://localhost:5173 滚动观看天空的演变!
设置MCP服务器
# Navigate to the MCP server
cd mcp-server
# Install dependencies
npm install
# Build the TypeScript
npm run build然后添加到您的VS Code MCP配置中(.vscode/mcp.json):
{
"servers": {
"codemuse": {
"command": "node",
"args": ["${workspaceFolder}/mcp-server/dist/index.js"],
"env": {}
}
}
}现在在Copilot聊天中,尝试:
- *“生成流场生成艺术草图”*
- *“为我的项目创建赛博朋克调色板”*
- *“为一个名为Fizz的有趣应用程序推荐一个品牌场景”*
- *“对于密集的图像,我应该使用什么ASCII艺术风格?”*
- *“给我一个高级创意编码挑战”*
- *“在Canvas中创建反弹粒子动画”*
______________________________________________________________________
🏗️ 建筑
CodeMuse/
├── src/ # React Web Application
│ ├── App.tsx # Main app with scroll layout + sky engine
│ ├── components/
│ │ ├── BackgroundScene.tsx # Scroll-driven sky (night→dawn→day→sunset)
│ │ ├── ScrollLayout.tsx # Scroll progress tracker (0→1)
│ │ ├── Header.tsx # Navigation with glass-morphism
│ │ ├── Hero.tsx # "Visual Story & Palette Studio" landing
│ │ ├── Gallery.tsx # Art grid with live canvas previews
│ │ ├── ArtCard.tsx # Cards with hover-to-reveal algorithm details
│ │ ├── CanvasRenderer.tsx # Generic canvas animation engine
│ │ ├── Studio.tsx # Full studio with controls + ASCII export
│ │ ├── DesignAssistantPanel.tsx # Palette & logo suggestion generator
│ │ ├── AsciiArtModal.tsx # Canvas → ASCII art converter
│ │ ├── MCPSection.tsx # MCP server documentation (6 tools)
│ │ ├── ZoneOut.tsx # Poetic interstitial section
│ │ ├── ConstellationBg.tsx # Static constellation canvas (legacy)
│ │ └── Footer.tsx # Links and attribution
│ ├── sketches/ # Generative Art Algorithms
│ │ ├── flowField.ts # 🌊 Noise-based flow field
│ │ ├── particleSystem.ts # ✨ Gravitational particle nebula
│ │ ├── fractalTree.ts # 🌳 Recursive fractal tree
│ │ ├── wavePattern.ts # 🎵 Wave interference patterns
│ │ ├── starField.ts # 🚀 Hyperspace warp effect
│ │ ├── spirograph.ts # 🎯 Mathematical spirograph
│ │ ├── mandala.ts # 🔮 Sacred geometry mandala
│ │ └── index.ts # Sketch registry
│ └── types/ # TypeScript type definitions
├── mcp-server/ # MCP Server for GitHub Copilot
│ ├── src/
│ │ ├── index.ts # Server with 6 tools (stdio transport)
│ │ └── templates/ # Art templates, palettes, challenges
│ └── package.json
├── .vscode/mcp.json # VS Code MCP configuration
└── docs/ # Additional documentation设计决策
- 滚动驱动背景 --The
BackgroundScene组件读取scrollProgress(0→1) 并使用以下公式计算每帧的天空梯度+恒星阿尔法requestAnimationFrame星星在白天逐渐消失,在日落时重新出现,在用户浏览页面时创造了一种时间叙事。
- 确定性设计助理 --所有调色板/徽标建议都使用来自精心策划的vibe库的基于哈希的变体选择。无需外部AI API——可靠、快速、零配置。
- 通过亮度映射的ASCII艺术 --画布像素被下采样为可配置的网格,亮度映射为10个字符的字符集,用于即时的文本艺术转换。
- 悬停以在艺术卡片上显示 --每张卡都存储算法元数据(数学公式+技术)。悬停覆盖动画将显示每个片段背后的计算细节。
- 不需要外部AI API --所有生成艺术都是算法的(Canvas 2D),MCP服务器使用精心策划的模板。一致、高质量的输出,零配置。
- MCP over stdio --MCP服务器使用标准I/O传输进行无缝VS代码副本集成。
______________________________________________________________________
🤖 GitHub Copilot如何帮助构建这个
该项目已建成 完全由GitHub Copilot协助 在VS代码中:
代码生成
- 基于滚动的天空引擎:Copilot帮助设计了平滑夜晚的颜色插值逻辑→dawn→day→日落过渡
- 生成艺术算法:Copilot提出了螺旋图(周转方程)的数学公式、流场的Perlin样噪声和分形树的递归分支
- 设计助理:Copilot通过精心策划的色彩和谐产生了从氛围到调色板的映射系统
- ASCII艺术转换器:Copilot推荐了具有可配置密度的亮度到字符映射方法
- MCP服务器:Copilot实现了所有6个工具定义、请求处理程序和品牌场景模板
问题解决
- 帆布性能:建议使用副驾驶
requestAnimationFrame使用线性颜色插值实现平滑的背景过渡 - 滚动跟踪:Copilot建议使用带有渲染道具模式的被动滚动监听器,以实现高效的重新渲染
- 悬停显示:Copilot设计了带有变换+不透明度的叠加动画,以实现平滑的显示过渡
创意设计
- 用户滚动时告诉视觉故事的夜空叙事
- 数学符号与简明英语技术描述相结合的算法元数据叠加
- 确定性调色板生成,从项目名称中产生一致的结果
______________________________________________________________________
🎯 挑战对齐
Track:使用GitHub Copilot的创意应用✅
| 需求 | 状态 | 详细信息 |
|---|---|---|
| GitHub Copilot使用情况 | ✅ | 使用Copilot构建的整个项目——代码生成、调试、设计 |
| 创意应用 | ✅ | 视觉故事引擎、生成艺术、调色板工作室、ASCII导出 |
| MCP服务器集成 | ✅ | Copilot聊天的6个创意工具 |
| 视觉创意 | ✅ | 滚动驱动的天空,悬停显示,品牌设计助理 |
| 公共存储库 | ✅ | 麻省理工学院许可,完全记录在案 |
| 演示 | ✅ | Web应用程序在本地运行 npm run dev |
评判标准覆盖范围
| 标准 | 权重 | CodeMuse如何解决它 |
|---|---|---|
| 准确性和相关性 | 20% | 满足所有创意应用程序要求;6-tool MCP服务器;视觉创意焦点 |
| 推理和多步骤 | 20% | 滚动→ 天空相位→ 颜色插值→ 星阿尔法;名称+氛围→ hash → 调色板→ CSS变量;画布→ 降低采样→ 亮度→ ASCII |
| 创造力和原创性 | 15% | 滚动驱动的天空叙事,悬停以显示数学叠加,确定性品牌助手,ASCII艺术导出 |
| 用户体验与演示 | 15% | 进化背景、宇宙玻璃形态UI、实时画布预览、交互式参数控件 |
| 可靠性和安全性 | 20% | 不需要API密钥、确定性输出、基于模板的MCP、输入验证、优雅的错误处理 |
| 社区投票 | 10% | 视觉上令人惊叹的滚动体验,可共享的PNG/ASCII导出 |
______________________________________________________________________
📦 技术栈
| 技术 | 目的 |
|---|---|
| 反应19 | UI框架 |
| TypeScript | 类型安全开发 |
| 维特 | 闪电般快速构建工具 |
| 顺风CSS 4 | 实用性优先的造型 |
| HTML5画布 | 实时生成艺术+卷轴驱动的天空 |
| Lucide反应 | 图标库 |
| MCP-SDK | 模型上下文协议服务器(6个工具) |
| GitHub Copilot | AI全程辅助开发 |
______________________________________________________________________
🎬 演示
Web库
- 跑
npm run dev并打开 本地主机:5173 - 慢慢滚动 观看天空从夜晚到黎明、白天和日落的演变
- 将鼠标悬停在艺术卡片上以查看 算法数学与技术 揭示
- 点击任何艺术品打开工作室
- 使用滑块调整参数,实时观看艺术变换
- 点击 ⣿ ASCII 导出为文本艺术的按钮
- 使用 设计助理 生成品牌调色板和徽标创意
- 将您喜爱的作品下载为PNG格式
MCP服务器正在运行
- 构建MCP服务器:
cd mcp-server && npm install && npm run build - 使用项目打开VS代码
- 这
.vscode/mcp.jsonconfig自动加载服务器 - 打开Copilot Chat并尝试:
- *“生成分形树生成艺术草图”* - *“为名为Aurora的宇宙应用程序推荐一个品牌场景”* - *“哪种ASCII风格最适合细节图像?”*
______________________________________________________________________
🤝 贡献
欢迎投稿!以下是一些想法:
- 添加新的生成艺术算法(沃罗诺伊图、L-系统、细胞自动机)
- 用字体配对建议增强Design Assistant
- 使用Web audio API添加音频反应
- 使用URL编码参数实现图库共享
- 添加更多ASCII艺术字符集和导出格式
______________________________________________________________________
📄 许可证
该项目根据MIT许可证获得许可——请参阅 许可证 文件以获取详细信息。
______________________________________________________________________
🏆 代理商联盟提交
- 轨道: 🎨 使用GitHub Copilot的创意应用
- 挑战:2026年微软代理商联盟
- 提交: 问题链接
- 仓库:公共,麻省理工学院许可
- 作者:内置❤️ GitHub Copilot
______________________________________________________________________
CodeMuse — Visual Story & Palette Studio ✨
