在 Github 上使用 OsmosFeed 搭建在線 RSS 閱讀器(無需伺服器)#
前言#
RSS 是什麼呢?咱們先唠唠。
🔜RSS🔚
RSS 全稱 Really Simple Syndication(真正簡易聯合),是一種基於 XML(可擴展標記語言)的內容分發協議,它允許用戶訂閱網站的內容更新,如新聞、博客文章等。好像還有另外的說法是 Rich Site Summary(網站內容摘要)和 RDF Site Summary(資源描述框架站點摘要),不過其實都描述的是從訂閱源獲取更新的內容,並將獲取的內容整合集中顯示,方便用戶進行查看。
網上有關 RSS 的相關介紹有很多,感興趣的話可以搜索了解下。
訂閱了 RSS,只要再結合 RSS 閱讀器,就可以直接看到有關博客的最新文章,那我們就重點搞 RSS 閱讀器。RSS 閱讀器無論是自建還是使用現成的,都有很多類型,像瀏覽器插件、手機端、電腦端程序、web 端等。搭建一個 web 端,方便、省事、對終端依賴小。
OsmosFeed是 GitHub 上一個開源的 Web 版 RSS 閱讀器,可以使用 GitHub Pages 托管,利用 GitHub Actions 實現內容定期自動更新,主題可自定義。
搭建過程#
創建倉庫#
1. 訪問 OsmosFeed 倉庫的配置教程,點擊教程中” 創建新倉庫 “中的第一步” 使用 osmosfeed-template 官方模板創建倉庫 “,頁面跳轉至創建新倉庫界面,設置倉庫名並將可見性設為 Public,點擊創建 Create repository 按鈕新建倉庫。
2. 進入剛創建好的倉庫,進入目錄.github/workflows
, 修改update-feed.yaml
文件為以下內容。
name: Build site on schedule or main branch update
on:
push:
branches:
- main
schedule:
# Adjust refresh schedule here. By default, it runs once per day.
# Syntax reference: https://docs.github.com/en/actions/reference/events-that-trigger-workflows#schedule
# Recommended tool: https://crontab.guru/
- cron: "0 11 * * *" #設置的執行時間周期
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js environment
uses: actions/[email protected]
with:
node-version: "20"
- name: Install dependencies
run: npm i
- name: Build the feed
run: npm run build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.action_token }} #action_token為設置的Actions secrets ,後面會講到
publish_dir: ./public
3. 進入剛創建好的倉庫,修改根目錄下的 osmosfeed.yaml 文件,將cacheUrl:
行前的#
去除,並將GITHUB_USERNAME
修改為自己的 github 名稱,REPO_NAME
修改為本倉庫的名。sources
下的- href:
為 RSS/Atom 源。
cacheUrl: https://GITHUB_USERNAME.github.io/REPO_NAME/cache.json
sources:
- href: https://css-tricks.com/feed/
- href: https://www.freecodecamp.org/news/rss/
- href: https://daverupert.com/atom.xml
設置身份驗證令牌#
1. 點擊自己的頭像,選擇 “Settings” -> “Developer settings” -> “Personal access tokens”->”Tokens(classic)“,點擊 “Generate new token”,選擇”Generate new token(classic)“,驗證後,指定一個描述性名稱,選擇令牌的有效時間,選擇要授予此令牌的範圍或權限。只需要選擇 repo 一項即可。點擊”Generate token“,完成創建。
2. 創建完成後,複製保存 token,後面要用。
3. 進入剛創建好的倉庫,進入倉庫的 “Settings” -> “Secrets and variables” -> “Actions”。點擊”Repository secrets“中的 “New repository secret”,輸入 Actions secrets 的名字為 action_token(與 update-feed.yaml 文件中的保持一致),並將第 2 步複製的 token 粘貼至 Secrets 框中,點擊”Add secret“保存。
部署 GitHub Pages#
1. 進入倉庫的 “Settings” -> “Pages” ,在 Branch 中選擇”gh-pages“,目錄選擇”/(root)“,點擊”save“保存。
- 刷新頁面,直到界面上出現
Your site is published at https://github用户名.github.io/仓库名
的確認信息(最多等待 1-3 分鐘)即可離開。完成部署。部署的詳細過程可以進入倉庫的”Actions",進行查看具體過程與異常情況。