GitHub 火线榜

GitHub 火线榜 · 仓库档案

joschi/blueskyfeedbot

A bot that posts RSS feeds to Bluesky via GitHub Actions (简介来自仓库自身文档。)

数据截至 10月27日joschi

最好成绩

#246

被忽视榜 · 活跃却无人问津

100

累计 Star

7

Fork 总数

3

近 30 天在榜天数

项目状态许可证: 未知最近 push: 10月24日Open Issues(含 PR): 15

自 2026-10-25 起采集;未知 = 尚未采集到

把上榜徽章放进你的 README · joschi/blueskyfeedbot[![把上榜徽章放进你的 README](https://git.vaiox.xyz/api/badge/joschi/blueskyfeedbot.svg)](https://git.vaiox.xyz/zh/repo/joschi/blueskyfeedbot)
<a href="https://git.vaiox.xyz/zh/repo/joschi/blueskyfeedbot"><img src="https://git.vaiox.xyz/api/badge/joschi/blueskyfeedbot.svg" alt="把上榜徽章放进你的 README" height="20"></a>

项目文档

Bluesky Feed Bot

Bluesky Feed Bot is a GitHub Action for posting RSS feeds to Bluesky via GitHub Actions workflows.

Usage

  1. Go to https://bsky.app/settings/app-passwords and add a new app password.

    • Name it whatever you want.
    • Save it and grab the app password. For security reasons, you won't be able to view this again. If you lose this app password, you'll need to generate a new one.
  2. Create a new GitHub repository.

  3. Go to your repository settings at https://github.com/${YOUR_REPO}/settings/secrets/actions/new, and add a new secret with the value of the access token.

  4. Add a file named .github/workflows/blueskyfeedbot.yml with the following content:

    name: FeedBot
    on:
      schedule:
        # This will run every five minutes. Alter it using https://crontab.guru/.
        - cron: '*/5 * * * *'
      workflow_dispatch: # This allows manually running the workflow from the GitHub actions page
    concurrency:
      group: feedbot
    jobs:
      rss-to-bluesky:
        runs-on: ubuntu-latest
        steps:
          - name: Generate cache key
            uses: actions/github-script@v6
            id: generate-key
            with:
              script: |
                core.setOutput('cache-key', new Date().valueOf())
          - name: Retrieve cache
            uses: actions/cache@v3
            with:
              path: ${{ github.workspace }}/blueskyfeedbot
              key: feed-cache-${{ steps.generate-key.outputs.cache-key }}
              restore-keys: feed-cache-
          - name: GitHub
            uses: 'joschi/blueskyfeedbot@v1'
            with:
              # This is the RSS feed you want to publish
              rss-feed: https://www.githubstatus.com/history.rss
              # Template of status posted to Bluesky (Handlebars)
              template: |
                {{item.title}}
    
                {{item.link}}
              # This is your service URL (optional)
              service-url: https://bsky.social
              # This is the Bluesky username (example: username.bsky.social)
              username: ${{ secrets.BLUESKY_USERNAME }}
              # This is the app password you created earlier
              password: ${{ secrets.BLUESKY_PASSWORD }}
              # This is a path to the cache file, using the above cache path
              cache-file: ${{ github.workspace }}/blueskyfeedbot/cache.json
              # The maximum number of posts created on the first run
              initial-post-limit: 10
              # Maximum number of XML entity expansions allowed when parsing feeds (0 = unlimited)
              # xml-entity-expansion-limit: 10000
  5. Commit and publish your changes.

Status template

The status template (status-template) is using Handlebars as template engine.

The action is passing in an instance of FeedData (field feedData) and the current FeedEntry (field item) into the template:

export interface FeedEntry {
  link?: string;
  title?: string;
  description?: string;
  published?: Date;
}

export interface FeedData {
  link?: string;
  title?: string;
  description?: string;
  generator?: string;
  language?: string;
  published?: Date;
  entries?: Array<FeedEntry>;
}

当前上榜

  • 246

    被忽视榜 · 活跃却无人问津

    100 星 · 7 fork · 累计 Star(升序)

    被忽视 →

近 30 天势头

累计 Star 走势

名次走势

每日新增 Star

同榜竞速 · 名次近邻 · 被忽视

同类项目 · 共享主题

← 回到榜单