在个人主页添加一个有趣的贪吃蛇动画 | GitHub

简介: 在个人主页添加一个有趣的贪吃蛇动画 | GitHub

这是我前几天在逛 GitHub 发现的有意思的东西,给自己的个人 GitHub 主页添加一个贪吃蛇动画,效果如下:

贪吃蛇会吃掉我们在 GitHub 上提交的代码记录,即吃掉那些绿色的格子。

e07a3f0d261608723d03cd8a5ac7f45b_640_wx_fmt=gif&wxfrom=5&wx_lazy=1.gif

这里稍微提一下,有些朋友可能对下面👇这种类型的图表不熟悉,这种类型的图表称为「热力图」,每一个小格子对应每一天,格子默认都是灰色的,其中绿色的格子就表示我们在那一天提交了代码,格子的颜色越深,则说明我们在那一天提交的代码次数越多。

6697661f3f358951883a294704c9beef_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

除了 GitHub,在其他互联网产品上,也可以看到热力图的影子,例如下面这些产品:

  • 豆瓣
  • Day One
  • flomo  
  • 幕布  
  • 极客时间  

f4897af3a88044bb1bac8ad584177635_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

回到前面说的,如何在 GitHub 个人主页,实现贪吃蛇的小动画呢?

非常简单,只需要你会复制代码就可以了,这个贪吃蛇小动画的代码来自 GitHub 上的一位用户 @L1cardo 的个人页面:

https://github.com/L1cardo  

99f95e13475e66d4e21d8e49a972bc63_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

实现贪吃蛇动画的代码如下,作者将其做成了一个会自动运行的命令,每天自动运行一次,运行之后会生成两个文件:gif 和 svg。

95798d9dae4d6de378402814f2d37308_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

为方便你使用,我将原作者的代码复制到了下面:

# GitHub Action for generating a contribution graph with a snake eating your contributions.
name: Generate Snake
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
- name: Generate Snake
uses: Platane/snk@master
id: snake-gif
with:
github_user_name: ${{ github.repository_owner }}
gif_out_path: ./assets/github-contribution-grid-snake.gif
svg_out_path: ./assets/github-contribution-grid-snake.svg
- name: Push to GitHub
uses: EndBug/add-and-commit@v7.2.1
with:
branch: main
message: 'Generate Contribution Snake'

需要注意的是,我们需要将这个代码复制到与自己的 GitHub ID 同名仓库的 .github/workflows 路径下。  

同名仓库没有这个路径或文件夹📂的,且不知道如何创建文件夹的朋友,可以参考我之前写过的一篇文章:

在个人主页展示今年的时间进度 | GitHub        

复制完代码后,我们还要将代码生成的 svg 文件放在GitHub ID 同名仓库的 README 文档中,它才会在个人首页显示。  

由于 README 文档是用 Markdown 格式进行编辑,引入 svg 文件需要使用下面这种格式。

![](https://raw.githubusercontent.com/这里更换为你的 GitHub ID/这里更换为你的 GitHub ID/main/assets/github-contribution-grid-snake.svg)

3ab2ab67e549909b57c6db9fbc7d858b_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

完成以上两步操作,就可以在自己的 GitHub 主页看到这个动画啦,还是很酷😎的:

e07a3f0d261608723d03cd8a5ac7f45b_640_wx_fmt=gif&wxfrom=5&wx_lazy=1.gif

以上,就是本次想和你分享的内容。


相关文章
|
机器人
小红书自动发布笔记,真好用!
小红书自动发布笔记,真好用!
1821 0
|
前端开发 Java 关系型数据库
【实训项目】you书-校园二手书交易APP
【实训项目】you书-校园二手书交易APP
978 0
|
搜索推荐 定位技术 数据库
项目性能参数和概念QPS&TPS
项目性能参数和概念QPS&TPS
326 0
|
Python
Markdown 拓展-Docsify 主题美化
docsify-themeable - A delightfully simple theme system for docsify.js https://jhildenbiddle.github.io/docsify-themeable/#/
1450 0
|
Ubuntu 大数据 Unix
手把手教如何搭建Linux环境(搭建云服务器) (Linux基础篇p1)
手把手教如何搭建Linux环境(搭建云服务器) (Linux基础篇p1)
手把手教如何搭建Linux环境(搭建云服务器) (Linux基础篇p1)
|
12月前
|
数据采集 人工智能 分布式计算
《Java 与大数据框架:AI 数据预处理的强力联盟》
在人工智能领域,数据预处理是确保模型准确性和高效性的关键。Java 与 Hadoop、Spark 等大数据框架的结合,为处理海量数据提供了强大的支持。通过 Java 编写的 MapReduce 和 Spark 程序,可以高效进行数据清洗、转换和特征提取,充分利用分布式计算能力,缩短预处理时间,提升数据质量。Java 在整合这些框架时,不仅实现了任务调度和错误处理,还为未来的优化和技术进步奠定了基础。这一组合为 AI 数据预处理带来了高效的解决方案,推动了人工智能技术的发展。
387 18
|
前端开发 安全 容器
CSS如何优雅实现卡片多行排列布局?
【8月更文挑战第24天】CSS如何优雅实现卡片多行排列布局?
905 3
|
机器学习/深度学习 TensorFlow 调度
优化TensorFlow模型:超参数调整与训练技巧
【4月更文挑战第17天】本文探讨了如何优化TensorFlow模型的性能,重点介绍了超参数调整和训练技巧。超参数如学习率、批量大小和层数对模型性能至关重要。文章提到了三种超参数调整策略:网格搜索、随机搜索和贝叶斯优化。此外,还分享了训练技巧,包括学习率调度、早停、数据增强和正则化,这些都有助于防止过拟合并提高模型泛化能力。结合这些方法,可构建更高效、健壮的深度学习模型。
|
存储 开发工具 git
Git 术语解析:深入理解上游分支
【2月更文挑战第26天】
1059 0
Git 术语解析:深入理解上游分支
|
设计模式 前端开发 开发者
css 三栏布局的实现?
css 三栏布局的实现?
286 0