我们可以通过 markdown 以及一些插件,来丰富我们的readme 文件,或者定制我们GitHub的个人首页。
插入个性化badge
Markdown
里可以使用 HTML
进行高级样式布局。
<div align&#61;"center"><img src&#61;"" />
</div>
通过给外层标签设置align
属性&#xff0c;让内容居中。
如果你浏览过一些 GitHub 的开源项目&#xff0c;你一定见过很多 README 文档中都会出现的五颜六色、各式各样的「小牌子」。
Badge
badge
图标均由 shields.io 网站提供。在这个网站上&#xff0c;你只需要提供需要显示的内容&#xff0c;就能得到一个精美的 badge
。你还可以自定义样式&#xff0c;可以说非常灵活。我们不仅可以将这些「小牌子」用在 GitHub 里&#xff0c;如果你拥有自己的「个人主页」、「博客」或其他展示个人资料的地方。
Shields.io 的基本用法
简单定制静态badge
Shields.io 就是一个我们开头提到的「牌子渲染服务」。事实上&#xff0c;GitHub 上面大部分「小牌子」都是用 Shields.io 来渲染的。我们可以借助于 Shields.io 服务定制一些个性化的「小牌子」。如下&#xff1a;
- Substats 项目开源在&#xff1a;GitHub - spencerwooo/Substats
- Substats 的 API 地址位于&#xff1a;Home - Substats API
- 另外&#xff0c;关于如何调用 Substats API&#xff0c;详细的文档&#xff1a;Substats Documentation
下面我来简单介绍一下如何利用 Substats 配合 Shields.io 定制 badge&#xff1a;
用 Substats 配合 Shields.io 制作动态badge
Substats 是一个非常方便易用的请求订阅者、粉丝、关注用户数量 API 服务。目前&#xff0c;Substats 平台支持了包括 Feedly、GitHub、Twitter、知乎和少数派在内的五个平台和网站。Substats 将复杂的原平台 API 请求进行了隐藏、简化和集成&#xff0c;让用 Substats 的你只需要关注两个参数&#xff1a;平台名称、用户名称&#xff0c;一波访问&#xff0c;即可得到对应的关注数量。
通过 Substats API 获取我们期望的数据
为了更好的配合 Shields.io 服务&#xff0c;将 Substats 的 API 设计成简单拼接 URL 即可进行数据请求。Substats API 的语法非常简单&#xff0c;我们只需要关注并提供如下的两个字段即可进行请求&#xff1a;
- &#x1f509; 目标服务名称
source
&#xff1a;你所想要请求的服务、网站和平台名&#xff08;比如&#xff1a;sspai
、weibo
……&#xff09; - &#x1f3ae; 请求数据标签
queryKey
&#xff1a;在这一服务中查询的关注数据对应的标签或名称.
这样&#xff0c;我们就可以用这样的语法来拼接一个 URL&#xff08;注意第一个字符是 ?
&#xff0c;其他用 &
拼接&#xff09;&#xff1a;
单个平台请求
https://api.spencerwoo.com/substats/?source&#61;{目标服务名称}&queryKey&#61;{请求数据标签}
这一 URL 会给我们返回类似下面的 JSON 结果&#xff1a;
{"status": 200,"data": {"totalSubs": 3,"subsInEachSource": {"github": 3},"failedSources": {}}
}
我们可以这样理解返回的数据&#xff1a;
- &#x1f3b2;
status
表示请求是否成功&#xff0c;成功即200 - &#x1f3e1;
data
请求返回的数据&#xff1a;totalSubs
表示总关注数&#xff0c;subsInEachSource
表示每个服务请求到的粉丝数据&#xff0c; failedSources
表示请求失败的数据源。
我们所需要的字段即为 $.data.totalSubs
, 也就是3&#xff0c;表示我们GitHub的关注人数。
多个平台串联请求
我们可以用 | 串联多个请求。比如&#xff0c;我同时请求知乎、GitHub 两个平台上面的关注&#xff0c;即可这样构造请求&#xff08;多个 source
和 queryKey
组合按照顺序进行请求即可&#xff0c;顺序在请求过程中不会丢失&#xff09;&#xff1a;
https://api.spencerwoo.com/substats/?source&#61;zhihu&queryKey&#61;xx&source&#61;github&queryKey&#61;xx
{"status": 200,"data": {"totalSubs": 314,"subsInEachSource": {"zhihu": 100,"github": 214},"failedSources": {}}
}
GitHub仓库卡片和分析统计
仓库卡片
开源项目&#xff1a;github-profile-trophy
https://github-profile-trophy.vercel.app/?username&#61;{USERNAME}&title&#61;Stars,Followers
分析统计
开源项目&#xff1a; github-readme-stats
https://github-readme-stats.vercel.app/api?username&#61;{用户名}&show_icons&#61;true
以上两个库都可以修改主题或者样式&#xff0c;具体参数可以跳转到GitHub 去看。
github阅读数统计
开源项目&#xff1a; GitHub Profile Views Counter
https://komarev.com/ghpvc/?username&#61;{your-github-username}