Skip to content

Speike-SHL/Speike-SHL.github.io

Repository files navigation

AcadHomepage

一个现代、响应式的个人学术主页



一些例子:

主要特点

  • 自动更新谷歌学术引用: 借助谷歌学术爬虫和github action功能,本仓库可以自动更新作者的引用数和论文引用数。
  • 支持谷歌Analytics: 你可以通过简单的配置来实现使用谷歌Analytics跟踪网页的流量。
  • 响应式的: 此主页会针对不同的屏幕尺寸自动调整布局。
  • 美观而简约: 此主页美观而简约,适合个人学术主页的搭建。
  • 搜索引擎优化: 搜索引擎优化 (SEO) 帮助搜索引擎轻松找到您在主页上发布的信息,然后将其与类似网站进行排名,并获得排名优势。

快速开始

  1. Fork本仓库到USERNAME/USERNAME.github.io,其中USERNAME是你的github用户名。
  2. 配置谷歌学术引用爬虫:
    1. 在你的谷歌学术引用页面的url里找到你的谷歌学术ID:例如,在url https://scholar.google.com/citations?user=SCHOLAR_ID 中,SCHOLAR_ID部分即为你的谷歌学术ID。
    2. 在github本仓库页面的Settings -> Secrets -> Actions -> New repository secret中,添加GOOGLE_SCHOLAR_ID变量:name=GOOGLE_SCHOLAR_IDvalue=SCHOLAR_ID
    3. 在github本仓库页面的Action中,点击*"I understand my workflows, go ahead and enable them"*启用workflows by clicking *"。本action将会谷歌学术引用的统计量数据gs_data.json到本仓库的google-scholar-stats分支中。每次修改main分支的内容会触发该action。本action也会在每天08:00 UTC定时触发。
  3. 使用 favicon-generator生成favicon(网页icon文件),并下载所有文件到REPO/images
  4. 修改主页配置文件_config.yml:
    1. title: 主页标题
    2. description: 主页的描述
    3. repository: USER_NAME/REPO_NAME
    4. google_analytics_id (可选的): 谷歌Analytics ID
    5. SEO相关的键值 (可选的): 从搜索引擎的控制台里获得对应的ID (例如:Google, Bing and Baidu),然后粘贴到这里。
    6. author: 主页作者信息,包括其他网页、Email、所在城市、大学等。
    7. google_scholar_stats_use_cdn: 使用CDN读取存储于https://raw.githubusercontent.com/的google scholar引用统计数据,防止中国大陆地区被墙无法访问的情况。但是CDN有缓存,因此google_scholar_stats_use_cdn : True时,引用数据更新会有延迟。
    8. 更多的配置信息在注释中有详细描述。
  5. 将你的主页内容添加到 _pages/about.md.
  6. 你的主页将会被部署到https://USERNAME.github.io.

本地调试

  1. 使用git clone将本项目克隆到本地。
  2. 安装Jekyll的构建环境,包括RubyRubyGemsGCCMake。可参考该教程
  3. 运行 bash run_server.sh 来启动Jekyll实时重载服务器。
  4. 在浏览器里打开 http://127.0.0.1:4000。如果你修改了网页的源码,服务器会自动重新编译并刷新页面。
  5. 当你修改完毕你的页面以后, 使用git命令,commit你的改动并push到你的github仓库中。

Acknowledges

  • AcadHomepage incorporates Font Awesome, which is distributed under the terms of the SIL OFL 1.1 and MIT License.
  • AcadHomepage is influenced by the github repo mmistakes/minimal-mistakes, which is distributed under the MIT License.
  • AcadHomepage is influenced by the github repo academicpages/academicpages.github.io, which is distributed under the MIT License.

介绍Jekyll

  • ./_config.yml 保存配置数据。很多配置选项都可以直接在命令行中进行设置,但是如果你把那些配置写在这儿,你就不用非要去记住那些命令了。
  • ./_includes 文件夹包含网页的组件,例如导航栏、页脚等。你可以加载这些包含部分到你的布局或者文章中以方便重用。可以用这个标签 {% include file.ext %} 来把文件 _includes/file.ext 包含进来。
  • ./_layouts 文件夹包含网页的模板layouts(布局)是包裹在文章外部的模板。布局可以在 YAML 头信息中根据不同文章进行选择。 这将在下一个部分进行介绍。标签 {{ content }} 可以将content插入页面中。
  • ./_data 格式化好的网站数据应放在这里。jekyll 的引擎会自动加载在该目录下所有的 yaml 文件(后缀是 .yml, .yaml, .json 或者 .csv )。这些文件可以经由 `site.data` 访问。如果有一个 members.yml 文件在该目录下,你就可以通过 site.data.members 获取该文件的内容。
    • ./_data/navigation.yml 文件包含导航栏的配置信息
  • ./_site 用于存放项目构建完成之后所生成的静态文件,也就是说,静态网站的所有文件都会来源于此,其中 CSS 文件、JS 文件以及图片文件,会存放在该目录下的 assets 文件夹中。我们可以直接把该目录下的文件拿去部署。
    • about.html “关于页”的内容。在执行构建时会被转化成 html 文件,放置于 _site 目录下
    • index.html “主页”的内容。在执行构建时会被转化成 html 文件,放置于 _site 目录下
  • ./_pages 文件夹包含网页的页面,例如about.mdpublications.md等。
  • ./_posts 文件夹包含博客文章,例如2022-01-01-first-post.md
  • ./_sass 文件夹包含网页的样式表。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published