Skip to content

Latest commit

 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EAL Weekly

EAL Weekly 是一个面向大众的 AI 周报与知识栏目,采用中英双语内容结构,文章以 Markdown 文件为源,自动生成页面、列表和周次排序。

1. 文章目录

所有文章统一放在 src/episodes/ 目录下。这个文件夹可以直接用 Obsidian 打开和管理,但需要注意:

  • Obsidian 只能帮你编辑和查看 Markdown,它不会让网页自动出现"相关文章"等功能

  • 网页上的标签必须写在每篇文章的 frontmatter tags: 里(见第 2 节)

  • 文件名可以按下面的方式命名:

  • eal-weekly-what-is-it-zh.md

  • eal-weekly-what-is-it-en.md

其中:

  • zh 表示中文版本
  • en 表示英文版本
  • 同一篇文章的中文和英文文件应使用相同的基础名称,例如 eal-weekly-what-is-it

Obsidian 用户注意:你可以在 Obsidian 中创建、编辑这些文件。只要保证 frontmatter 里的 tags: 写对了,网页上的"相关文章"就会正常工作。Obsidian 里的 #标签 或图谱链接不会同步到网站。

如果一篇文章有对应的另一语言版本,网页会自动识别并在文章页顶部显示语言切换按钮:

  • 中文版本
  • English Version

2. 文章必须写的日期格式

每篇 Markdown 文件的 frontmatter 必须包含日期,使用固定格式:

---
layout: layouts/episode.njk
title: "EAL Weekly 是什么?"
date: 2026-08-24
language: zh
tags:
  - journal
  - introduction
summary: "我们为什么做这个期刊,以及它想解决什么问题。"
---

日期必须使用:

  • YYYY-MM-DD
  • 例如:2026-08-24

网页会根据这个日期自动计算周次,并按时间倒序排列。也就是说:

  • 文章的写作日期 = 排序依据
  • date 字段 = 周次归属与展示时间
  • 如果没有日期,文章不会参与正确排序

3. 文章添加步骤

  1. src/episodes/ 目录下新建一个 Markdown 文件。
  2. 复制 src/episodes/_template.md 模版内容。
  3. 修改 titledatelanguagesummary 和正文。
  4. 如果该文章有中英双语版本,使用相同的基础命名,并分别写入 zh / en
  5. 运行:
npm run build
  1. 生成静态站点后,文章会自动出现在首页精选列表与文章列表中。

4. 自动打标签(可选)

项目提供了一个基于关键词的自动打标签脚本,运行后会根据文章内容自动给 frontmatter 添加 tag:

# 扫描整个 src/episodes/ 目录
npm run tag

# 只处理单篇文章
npm run tag -- src/episodes/your-article-zh.md

它会保留你已经写好的 tag,并根据正文内容自动补充。例如文章提到 OpenAI、GPT、ChatGPT 会自动加上 openai;提到 agent、智能体会加上 agent

如果你想用更智能的 AI 自动打标签(比如调用 OpenAI API 分析主题),可以在此基础上扩展脚本,接入任意大模型 API。

5. 相关文章推荐

每篇文章页面底部会自动显示"相关文章"。相关度基于:

  1. 共同标签数量(最重要)
  2. 是否同一语言
  3. 是否同一周次
  4. 发布日期是否接近

系统会自动排除当前文章本身,以及它的中英翻译版本,避免重复推荐。

这个功能完全由 Eleventy 在构建时计算生成,不需要 Obsidian,也不需要你手动维护链接。

6. MD 模版

模版文件:src/episodes/_template.md

内容示例:

---
layout: layouts/episode.njk
title: "Article Title"
date: 2026-08-24
language: zh
tags:
  - journal
  - introduction
summary: "Short summary in one or two sentences."
---

## Overview

Write the article body here.

## Why this matters

Explain the topic in plain language.

## Key takeaways

- Point one
- Point two
- Point three

7. 周次识别规则

网页会读取每篇文章的 date 字段,并自动计算该文章所属周次,例如:

  • 2026-08-24Week 35
  • 2026-08-30Week 35

排序规则:

  • 默认按日期从新到旧排列
  • 首页精选列表展示最新的前几篇
  • 文章页会显示当前文章所属周次与日期标签

8. 开发命令

npm install
npm run dev
npm run build
npm run tag        # 自动给文章打标签

9. 本地预览与自动刷新

本地预览

在项目根目录执行:

npm run dev

然后打开浏览器访问:

http://localhost:8080

Eleventy 会自动监控以下文件的变化:

  • Markdown 文章
  • Nunjucks 模板
  • CSS 和 JS
  • 其他静态资源

一旦文件更新,页面会自动重新生成并刷新。

生产构建

npm run build

生成目录为:

_site/

10. GitHub Pages 部署步骤

这个项目支持 GitHub Pages 自动部署。已在仓库中添加工作流文件:

部署流程:

  1. 代码推送到 main 分支
  2. GitHub Actions 自动触发 workflow
  3. 安装依赖并执行 npm run build
  4. _site 目录部署到 GitHub Pages
  5. 页面自动更新

GitHub 仓库设置

在 GitHub 仓库中:

  1. 进入 Settings
  2. 选择 Pages
  3. Source 选择 GitHub Actions

然后每次合并到 main 后,GitHub Pages 都会自动重新构建并发布。

11. User Site 与 Project Site 的区别

User Site(用户站点)

这是 GitHub 提供的个人主页形式,网址通常是:

https://<username>.github.io/

特点:

  • 这是一个个人站点入口
  • 适合放个人主页、博客、作品集
  • 通常专门用于一个用户或个人品牌

Project Site(项目站点)

这是仓库对应的项目页面,网址通常是:

https://<username>.github.io/<repository-name>/

特点:

  • 适合放项目文档、案例、周报、博客站点
  • 路径中带仓库名
  • 例如本仓库当前配置会使用:
https://<username>.github.io/EALWeekly/

自定义域名

本项目的生产域名是:

https://ealweekly.me/

自定义域名站点部署在根路径,而不是 /EALWeekly/。因此,GitHub Actions 构建时不应设置 BASE_URL(Eleventy 默认使用 /);否则首页和文章链接会被错误地生成成 https://ealweekly.me/EALWeekly/... 并导致 404。

src/CNAME 会被 Eleventy 原样复制到发布产物的根目录,GitHub Pages 据此持续绑定 ealweekly.me。在 GitHub 仓库 Settings → Pages 中也应显示相同的 Custom domain,并启用 Enforce HTTPS(证书签发完成后可用)。

原 GitHub Pages 项目地址

不使用自定义域名时,这个仓库的 GitHub Pages 项目地址是:

https://jasonsun2009cn.github.io/EALWeekly/

如需临时为该项目地址构建,可运行 BASE_URL=/EALWeekly/ npm run build。生产部署则始终使用根路径 /

12. 说明

  • 文章以 Markdown 为主源,不再依赖测试数据。
  • 当前站点支持中英双语文章切换。
  • 首页已保留“精选文章列表”区域,用于突出重要文章。
  • 通过 GitHub Pages + GitHub Actions,可以实现:更新 MD 文档 → push → 自动部署 → 站点刷新。

About

A weekly updated report of AI forefront news

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages