分享一个 ProHub 风格 logo 生成器
大家好,我是 Immerse,一名独立开发者、内容创作者、AGI 实践者。
- 关注公众号:#沉浸式趣谈,获取最新文章(更多内容只在公众号更新)
- 个人网站:
https://yaolifeng.com
也同步更新。 - 转载请在文章开头注明出处和版权信息。
我会在这里分享关于编程
、独立开发
、AI干货
、开源
、个人思考
等内容。
如果本文对您有所帮助,欢迎动动小手指一键三连(点赞
、评论
、转发
),给我一些支持和鼓励,谢谢!
最近体验了 Claude Code,临时起意,又搞了个新项目 - ProHub Logo,这次完全是用 Claude Code 来实战开发的。说实话,整个过程体验 + 踩坑。
项目地址:
- 海外访问:
https://prohub-logo.vercel.app
- 国内访问:
https://prohub-logo.netlify.app
- GitHub:
https://github.com/yaolifeng0629/prohub-logo
全程用 Claude Code,说实话体验还不错,但使用命令行的方式还是有点小小的不适应,还是喜欢 GUI 的方式。
开发过程基本和之前类同,感兴趣的小伙伴可以看 最近 Vibe Coding 的实践经验分享
过程
初始化与技术选型
我选择 Next.js + TypeScript 技术栈。在项目根目录创建了 CLAUDE.md
文件来规范 Claude Code 的工作方式:
# ProHub Logo Generator
## 技术栈
- 前端:Next.js 14, TypeScript, Tailwind CSS
- 部署:Vercel + Netlify
## 编码规范
- 使用 TypeScript 严格模式
- 组件采用函数式写法
- 使用 Tailwind 进行样式管理
- 每次修改后运行 typecheck
## 项目结构
- components/: 可复用组件
- app/: Next.js App Router 目录结构
- utils/: 工具函数
有了这个配置文件,Claude Code 在后面开发中就能准确理解项目规范,生成符合预期的代码。
核心功能实现
1. Logo 生成逻辑
开发过程采用了"探索→规划→编码"的工作流:
首先让 Claude Code 分析自己需求:"创建一个类似 ProHub 风格的 Logo 生成器,支持自定义文本、颜色、样式、导出等功能,不需要用户登录模块。"
Claude Code 给出的答案:
- 使用 Canvas API 进行图形绘制
- 支持多种字体和样式组合
- 实现实时预览功能
- 添加导出功能
2. 迭代开发策略
还是小步走策略:先实现基础功能,再逐步完善。每个功能模块开发完后,让 Claude Code 检查并优化代码。
过程中踩的坑
Canvas 导出图片质量问题
最开始用 Canvas 导出图片的时候,发现图片质量很差,特别是文字边缘有锯齿。
解决方案:
// 设置高分辨率
const scale = 2;
canvas.width = width * scale;
canvas.height = height * scale;
ctx.scale(scale, scale);
// 开启抗锯齿
ctx.textRenderingOptimization = 'optimizeQuality';
ctx.imageSmoothingEnabled = true;
实践感受
1. 配置文件很关键
CLAUDE.md
配置文件起到了重要作用。它就像给 Claude Code 的"记忆体",让 AI 能记住项目规范和偏好。这点和 Cursor 类同。
建议配置内容包括:
- 技术栈说明
- 编码规范
- 常用命令
- 项目结构约定
2. 结构化提示带来精确结果
相比简单的"帮我写代码",结构化的提示能得到更好的预期结果:
项目背景:ProHub 风格的 Logo 生成器
当前任务:实现 Canvas 导出功能
技术要求:
- 支持高分辨率导出
- 确保文字清晰度
- 兼容主流浏览器
- 代码要有良好的错误处理
3. 自定义命令简化重复操作
参考了一些资料,自己可以自定义 Command, 可以减少一些重复性操作的工作。
4. 上下文管理的实用技巧
- 适时使用
/compact
: 完成一个功能模块后立即压缩上下文 - 及时清理历史: 切换到新功能开发前使用
/clear
命令 - 文件引用优化: 使用
@filename
精确引用,避免让 Claude Code 搜索,也能减少 Token 消耗。
总结
这次用 Claude Code 开发 ProHub Logo 生成器,整体体验还是不错的。
几个心得:
- 配置文件必不可少:不管是 Claude Code 中的
CLAUDE.md
,还是 Cursor 中的.mdc
,给 AI 定义好规则可以大大提高开发效率。 - 上下文管理:就算是编码能力出色的 Claude 4,如果不能有效管理上下文,照样会返回错误或无关的内容。所以提示工程很重要。
好了,今天的分享就到这里。
如果觉得有用,别忘了点个赞哦~
其他好文推荐
一个 Cursor mdc 自动生成器,基于 Gemini 2.5,很实用!
搞定 XLSX 预览?别瞎找了,这几个库(尤其最后一个)真香!
【完整汇总】近 5 年 JavaScript 新特性完整总览
分享一个 ProHub 风格 logo 生成器的更多相关文章
- 分享一个Fluent风格的邮件发送封装类
C#中用SmtpClient发邮件很简单,闲着无事,简单封装一下 IEmailFactory public interface IEmailFactory { IEmailFactory SetHos ...
- 使用CSS3 制作一个material-design 风格登录界面
心血来潮,想学学 material design 的设计风格,就尝试完成了一个登录页面制作. 这是整体效果. 感觉还不错吧,结尾会附上代码 在编写的过程中,没有使用任何图片或者字体图标,全部使用css ...
- 分享一个后端专用login模板
给大家啊分享一个后端专用login模板 Java工程师再也不用这样啦---> html源码 <html lang="en"> <head> <m ...
- Github标星26k+!一个神奇的软件!1分钟即可打造了一个科幻风格的终端
Github掘金计划项目分类汇总(原创不易,若有帮助,欢迎分享/点赞): 编程基础 :精选编程基础如学习路线.编程语言相关的开源项目. 计算机基础:精选计算机基础(操作系统.计算机网络.算法.数据结构 ...
- 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)
分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间 这里共享一个脚本 CREATE TABLE #tab ...
- 分享一个MySQL分库分表备份脚本(原)
分享一个MySQL分库备份脚本(原) 开发思路: 1.路径:规定备份到什么位置,把路径(先判断是否存在,不存在创建一个目录)先定义好,我的路径:/mysql/backup,每个备份用压缩提升效率,带上 ...
- 分享一个与ABP配套使用的代码生成器源码
点这里进入ABP系列文章总目录 分享一个与ABP配套使用的代码生成器源码 真对不起关注我博客的朋友, 因最近工作很忙, 很久没有更新博客了.以前答应把自用的代码生成器源码共享出来, 也一直没有时间整理 ...
- 分享一个常用Adb命令
分享一个常用Adb命令 首先 首先感谢@xuxu的常用adb命令,收益良多,但是已经不能满足于我,所以补充了下. 再者 好久没发帖了,最近论坛老司机们都在讨论/总结,我就用这个干货回报吧. 最后 基于 ...
- 福利到~分享一个基于jquery的智能提示控件intellSeach.js
一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管理系统,想搜索李XX,只要输入“李”,系统自然会提示一些姓李的员工,这样方便用户 ...
- 分享一个oraclehelper
分享一个拿即用的oraclehelper 首先要引用本机中的oralce access,如果是64位的话,也必须是64位运行,不然会报连接为空connection 等于null. using Orac ...
随机推荐
- nndeploy开源推理框架教程来袭,模型推理全流程,轻松上手,一键精通!
大家好,我们是 nndeploy 开源团队.我们专注于打造一款端到端的模型推理和部署框架 -- nndeploy,旨在为用户提供高效.便捷.灵活且兼容主流框架的模型推理和部署体验. 此次,我们开发了 ...
- 细节解析 JavaScript 中 bind 函数的模拟实现
大家的阅读是我发帖的动力,本文首发于我的博客:deerblog.gu-nami.com/,欢迎大家来玩,转载请注明出处喵. 前言 bind是一个改变函数this指针指向的一个常用函数,经常用在涉及th ...
- 开源PDF处理工具——Ghostscript的安装和使用
1. 安装 Ghostscript Windows 下载 Ghostscript: 官网:https://www.ghostscript.com/download/gsdnld.html 选择适合你的 ...
- k8s之serviceaccount,登录账号创建
kubectl --> 认证 --->授权 -->准入控制 认证:证书 身份识别 授权:rbac 权限检查 准入控制: 补充授权机制 多个插件实现 只在创建 删除 修改 或做代 ...
- 笔记 - linux子系统更换阿里云镜像源
平时还是用 windows 多一些, 偶尔会玩一玩 linux, 之前给我一台多年的笔记本装了个 manjaro , 颜值是蛮高的, 就一点也不太熟, 就不想玩了, 还是用子系统, win 有支持 U ...
- 【工程应用十】 基于Hessian矩阵的Frangi滤波算法 == 血管图像增强 == Matlab中fibermetric函数的自我实现、加速和优化。
前几天在翻一翻matlab中的帮助文档,无意中发现一个叫fibermetric的图像处理函数,感觉有点意思,可以增强或者说突出一些类似于管状的对象,后面看了下算法的帮助文档,在百度上找了找,原来这也是 ...
- RPC实战与核心原理之健康检测
健康检测:这个节点都挂了,为啥还要疯狂发请求 回顾 超大规模集群"服务发现"的挑战,服务发现的作用就是实时感知集群 IP 的变化,实现接口跟服务集群节点 IP 的映射.在超大规模集 ...
- Seata源码—5.全局事务的创建与返回处理
大纲 1.Seata开启分布式事务的流程总结 2.Seata生成全局事务ID的雪花算法源码 3.生成xid以及对全局事务会话进行持久化的源码 4.全局事务会话数据持久化的实现源码 5.Seata Se ...
- Special Binary String——LeetCode进阶路
原题链接https://leetcode.com/problems/special-binary-string/ 题目描述 Special binary strings are binary stri ...
- AD 侦查-AS-REP 烘烤攻击
本文通过 Google 翻译 AD Recon – AS-REP Roasting Attacks 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充. 导航 0 前言 1 ...