Skip to content
This repository was archived by the owner on Mar 15, 2026. It is now read-only.

acecore-systems/acecore-microfeed

 
 


microfeed: Cloudflare でセルフホストできる軽量 CMS

バグ報告 · 機能提案 · メールでお問い合わせ

microfeed へようこそ! これは Cloudflare 上でセルフホストできる軽量コンテンツ管理システム (CMS) です。 音声・動画・写真・ドキュメント・ブログ記事・外部 URL など、さまざまなコンテンツを Web/RSS/JSON 形式のフィードとして公開できます。 サーバーを自前で運用せずに CMS を持ちたいテック志向のユーザーに最適です。

microfeed は Listen Notes によって開発され、 Cloudflare の PagesR2D1Zero Trust の各サービス上で動作します。

質問・フィードバックはお気軽に support@microfeed.org までどうぞ!

📚 目次

Deploy to Cloudflare Pages CI Email us stability-alpha

⭐️ 仕組み

1990 年代から Web の多くは「フィード」で動いてきました。 誰かがフィードにアイテムを投稿し、他の人(やボット)が購読して更新を受け取る――そんな流れです。

microfeed を使えば、Cloudflare 上に次のようなフィードを簡単にセルフホストできます:

  • ポッドキャスト用音声フィード
  • ブログ記事フィード
  • Instagram ライクな画像フィード(例: llamacorn.listennotes.com
  • YouTube ライクな動画フィード
  • リンクまとめ型の個人サイト(例: wenbin.org
  • 外部ニュース URL のキュレーションフィード
  • 製品アップデート/プレス掲載まとめサイト(例: microfeed.org
  • GUI ダッシュボード+公開 JSON フィードを備えたヘッドレス CMS
  • 販売用ドメイン一覧サイト
  • 書籍まるごと公開サイト(例: The Art of War
  • 変更履歴サイト(例: changelog.listennotes.com
  • …などなど

Cloudflare の Pages・R2・D1・Zero Trust を組み合わせ、 ドメイン代だけでほぼ無料 の運用が可能です。

フィード形式の例

ダッシュボードは直感的で、WordPress に慣れていればすぐ操作できます。

Dashboard Screenshot

↑ 目次へ戻る

🚀 インストール

流れはざっくり次の 5 ステップです:

  1. microfeed リポジトリ を GitHub 上でフォーク
  2. Cloudflare の API トークン等を Secrets に登録
  3. 付属の GitHub Action で Cloudflare Pages へデプロイ
  4. Cloudflare ダッシュボードでカスタムドメイン等を設定
  5. 完了!すぐに公開を始められます

ドキュメント読むのが苦手でも極力簡単に導入できるようにしています。 将来的に Cloudflare が「Login with Cloudflare」OAuth を提供すれば、ほぼ 1 クリック導入も夢ではありません!

前提条件

↑ 目次へ戻る

Step 1. microfeed をフォーク

こちらをクリック するだけです。 コードを触る予定がなくても、フォーク&同期だけで OK。

Step 2. シークレットを設定

フォークしたリポジトリの Settings → Secrets → Actions で以下 5 つを追加します:

シークレット名 何を入れるか
CLOUDFLARE_ACCOUNT_ID Cloudflare アカウント ID
CLOUDFLARE_API_TOKEN Pages + D1 の「編集」権限付き API トークン
R2_ACCESS_KEY_ID R2 の Access Key
R2_SECRET_ACCESS_KEY R2 の Secret Key
CLOUDFLARE_PROJECT_NAME my-site-com のようなプロジェクト名

(詳細な取得手順は元 README の画像を参照)

Step 3. GitHub Action でデプロイ

リポジトリの Actions → Deploy to Cloudflare Pages ワークフローを手動実行。 ✓ 緑色になれば成功。${PROJECT_NAME}.pages.dev でサイトが見られます。

Step 4. Cloudflare ダッシュボードでクリック

${PROJECT_NAME}.pages.dev/admin にアクセスし、チェックリストに従って初期設定。 Zero Trust で管理画面にログイン制限をかけることを推奨します。

Step 5. 完了/公開開始

ダッシュボードからアイテム追加・編集が行えます。

Settings → Custom code で HTML/CSS を直接編集し、自由にサイトの見た目をカスタマイズ可能です。

↑ 目次へ戻る

おまけ:最新版へ更新

新機能やバグ修正が入ったら、フォークを GitHub で SyncDeploy Workflow を再実行するだけ!

💻 FAQ

ポッドキャストや動画のダウンロード数を計測したい

Tracking URLs 機能で OP3Podtrac のような外部解析サービスを挟めます。 Settings → Tracking URLs から追加してください。

Cloudflare 依存はリスクでは?

Listen Notes チーム自身も長年 Cloudflare を利用しており、利便性と安定性を評価しています。 ただし将来的には他のサーバーレスプラットフォームもサポート予定です。

もし Cloudflare からサービス停止されたら?

D1 の SQLite と R2 のバケットを定期バックアップしておけば、他環境へ容易に移行できます。 独自ドメインを使うことで移行先の切替もスムーズです。

microfeed を使う理由は?
  • 既に Cloudflare を使っている
  • サーバー管理をしたくない
  • 無料枠で運用したい
  • 新しいツールを試したい

いずれかに当てはまるなら検討する価値ありです。

D1 / R2 からデータをバックアップする方法は?

microfeed は Cloudflare D1 と R2 にデータを保存します。 バックアップしたい場合は次の 2 つを取得すれば OK です。

  1. D1 の SQLite データベース wrangler d1 コマンドでダウンロードできます。
  2. R2 のメディアファイル S3 互換 API を利用してスクリプトで全オブジェクトを取得してください。

↑ 目次へ戻る

💪 コントリビュート

バグ報告や機能提案は Issue 作成 を、 プルリクエストも歓迎です!

ローカルで動かす

前提: node / npm, yarn, wrangler

  1. ルートに .vars.toml を作成し、Step 2 の 5 つのシークレットを記入

    # .vars.toml
    CLOUDFLARE_PROJECT_NAME = "your-project-org"
    CLOUDFLARE_ACCOUNT_ID   = "account id"
    CLOUDFLARE_API_TOKEN    = "api token"
    R2_ACCESS_KEY_ID        = "access key"
    R2_SECRET_ACCESS_KEY    = "secret key"
    
    R2_PUBLIC_BUCKET        = "your-r2-bucket-name"
  2. 開発サーバー起動

    yarn dev

    http://127.0.0.1:8788/ でアクセスできます。

yarn devyarn dev:client(Webpack DevServer)と yarn dev:edge(Wrangler)を並列実行します。

↑ 目次へ戻る

🛡️ ライセンス

microfeed は AGPL-3.0 ライセンスで提供されています。

↑ 目次へ戻る

About

マイクロフィード

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors

Languages

  • JavaScript 80.4%
  • HTML 18.1%
  • CSS 1.3%
  • Shell 0.2%