GitShow:把 GitHub 账号变成一个自托管个人主页
内容提要
GitShow 是一个自托管的 GitHub 个人主页程序,能将账号数据整理成干净的网页,展示个人信息、项目、贡献热力图和动态。它不依赖数据库,适合部署在服务器上。项目页可精选仓库,避免实验性项目干扰,让主页更像一个真正的作品集。
昨天给 Utterlog 添加了一个 GitHub 使用记录的页面,是从李笑来的官网扒来的思路(因为模仿的太像,不能叫参考),可以记录 GitHub 每日的构建动态,特别适合像我这样靠 AI 搞点东西的新手。
今天早上收到扣费通知,19 美元。我看了下是 MiniMax 订阅套餐,之前看到新模型发布,想体验一下 MiniMax 2.6,就开通了基础套餐,结果忘了退订。寻思也不能浪费,于是想着手里有几个用不到的 .dev 域名,干脆做成和 GitHub 信息关联的页面,就开始构思。
很多开发者都有 GitHub,但 GitHub Profile 本身更像一张名片。它能展示头像、简介、仓库和贡献图,但如果想把它当成真正的个人主页,就会遇到几个问题:项目展示不够可控,动态分散在不同页面,社交链接和联系入口不够灵活。
于是我做了 GitShow。
GitShow 是什么
GitShow 是一个自托管的 GitHub 个人主页程序。它会读取你的 GitHub 账号数据,把个人信息、项目、贡献热力图、最近动态、关注的人和 Star 趋势整理成一个干净的网页。它不是一个 SaaS,也不依赖数据库,适合直接部署在自己的服务器上。
它能展示什么
GitShow 的首页会先展示 GitHub 头像、用户名、简介、位置、社交链接,以及仓库数、Star 数、Commit 数、关注数和粉丝数。下面是贡献热力图、最近 30 天活动柱状图、精选项目和最近动态。
项目页不是简单列出所有仓库,而是由后台决定哪些仓库显示。这样个人主页就不会被一些实验仓库、临时仓库占满,而是更像一个真正的作品集。
活动看板会把 Push、PR、Issue、Star、Fork、Release 等 GitHub 事件整理成可筛选的时间线。关注页则会展示你关注的人、他们最近活跃时间、近期仓库和提交动态。
数据是怎么来的
GitShow 主要使用两类 GitHub API。
一类是 REST API,用来读取用户信息、仓库列表、仓库语言、最新 Release、公开动态和关注列表。
另一类是 GraphQL API,用来读取贡献日历和提交贡献统计。如果 GraphQL 获取失败,程序会退回到公开事件数据,尽量构造最近一年的提交热力图。
后端会把这些数据缓存起来,并且每 30 分钟刷新一次。这样页面访问时不需要每次都请求 GitHub,也能降低 API 限流风险。Star 趋势会记录到 star-history.json,最多保留最近 90 天。
后台管理
GitShow 带了一个轻量后台。进入后台后可以修改网站标题、GitHub 地址、Token、联系按钮、社交链接、首页项目数量和项目开关以及 Passkey 登录相关。
适合谁用
GitShow 适合想快速拥有一个开发者主页的人,想把 GitHub 项目整理成更像作品集的页面,通过关注可以更清楚的看到所关注用户的更新状态和仓库状态。
小结
GitShow 的目标不是替代 GitHub,而是把 GitHub 里的公开开发轨迹重新组织成一个更适合展示的个人主页。它保留了 GitHub 数据的真实来源,又提供了更自由的展示方式和更友好的关注信息同步状态。
演示地址: https://xifeng.dev
项目地址: https://github.com/gentpan/GitShow,想要一些星星。





















太优秀了。
你最近产出很多,热情高涨!
ai 无所不能,估计很快要统治人类~
今天看了一个报道说 Ai 可能在不久的将来会自己开发自己,到时候会不会人和机器人大战,哈哈
这个厉害了,我刚试了下,访问速度非常快
还在改进,昨天看了别人一个项目,界面更好看,我再继续更新下
效果不错。。
感觉比较鸡肋没啥用,哈哈,就是给闲置域名做个停放
挺不错的,项目不少啊!
domain.ls 是你的吗?怎么打不开了
对,也是我的, 没有去部署,我这两天给上线,把所有域名弄好看看
demo.utterlog.io 这个也打不开了
utterlog 只支持 docker 部署吗?
能不能源码部署,或者 go 程序运行?
分前端后端, 所以 docker 比较好,但是占用资源不多的,demo 这个站因为这个程序一直还没完善好, 我就没去搭建检测试站。 我晚点搭建一个我把账号密码发你邮箱你看看。
好的,谢谢。
你有没有发现你的评论会重复。。哈哈
刚刚发现这个问题,已经修复了,等下我升级下