16

你在 GitHub 上看到过的最有意思的项目是什么?

 3 years ago
source link: https://zhuanlan.zhihu.com/p/161705999
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

你在 GitHub 上看到过的最有意思的项目是什么?

阿里巴巴 前端工程师

知乎答题上面的《你在 GitHub 上看到过的最有意思的项目是什么?》个人回复,有一些文章的感觉,直接放到专栏

那到底是可以怎么玩呢?

答案是 让你的 Github 个人页,变成一个博客首页,同时每天自动更新信息展示

前几天 github 出了一个新彩蛋,会自动将你仓库下的同名用户名仓库的 README 展示到你的个人页面的上方,就是如下的这个样子:

github.com/tw93 欢迎 Follow,欢迎 Follow,欢迎 Follow ⛷⛷ ‍♀️ ‍♀️ ‍♀️⛸ ⛹

周末两天空闲时间折腾了下,通过 Github Actions 自动每天去跑我的开源仓库、博客、WakaTime 和豆瓣动态,然后写入到 README 里面去,可编程性被大大提高了,很是潮流!

怎么实现的,知识点一个一个给大伙同步

预备知识

自动化获取信息巧妙方式

以上实现详细可见github.com/tw93/tw93仓库,有这么几种不错的实现:

1、利用 Github 提供的 Api

比如图片中 Product Releases 是借助 Python 中的GraphqlClient 去获取 Github Graphql Api 方式实现,先取到当前用户下所有的仓库字段信息,然后通过字符串拼接的方式凑成你需要的格式即可

2、利用网站的 RSS 地址很方便

比如说 Recent Blog 以及 Funny Soul 这两块,博客信息利用 feed.xml 可以快速获取

豆瓣的动态信息当时有想过去用 python 爬对应的信息,但是实现下来会比较蹩脚,登录态需要隔一段时间去维护一下,恰好在处理个人页信息时候看到了如下 feed rss,半小时就把本来一天的事情给做了;

Rss 信息处理整体可以通过 feedparser 将对应的 Rss 获取到内容数组,然后再进行拼接即可

3、利用自动化的工具提供的 API

比如上文中的 Weekly Development Breakdown 这一块,超级推荐大家使用 wakatime 这个工具来统计你的代码时间,具体使用可以 Google,此处不详细;

如何画如下这个图,可以参考 tw93/waka-box 里面的代码,利用 wakatime-client 取到信息,然后也是进行字符串拼接处理即可,由于是之前 fork 更改,最终会生成一个 gist

最后利用 httpx 获取到对应 raw 的文本内容,然后通过到 Markdown 代码语法插入即可

更多思路

结合 Github Profile Readme 和 Actions 能力 还可以做更多有趣的事情,比如可以将每天需要看到文章自动生成到首页去,这样就不需要去找了,可参考github.com/simonw,周末弄时有些处理借鉴了 simonw 的思路

还有一种“忽悠的有趣玩法”,可以录制一个 mp4,然后转成 gif 放到首页上去,会比较有趣,比如说praveenscience这个老外

v2-e5df366203b85556efdb2ba1270c594e_b.jpg

还有一种“更 6666 的”,直接将玩游戏搬到了首页,通过发送 issue 的方式来移动棋子,然后动态更新,有很多人在玩,还有排名,很是潮流,比如说timburgan

v2-9a944f8f5a2e1b18e97cb33837c21264_b.jpg

发现了一个 awesome 专门放 github profile readme 的仓库,提交了一个 PR,里面收集了大量的案例和使用,可见abhisheknaiidu/awesome-github-profile-readme

结尾

顿时觉得国外的程序员都挺会玩的,很是潮流,值得我们学习和去交流,少加无意义的班,多写有趣的代码。

目前阿里飞猪正急招 P6 前端,整体阿里前端 P6 HC 不多,对于想进阿里的同学机会难得,一个很潮流和成熟的前端团队,很欢迎加入和我们一起折腾 [email protected]


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK