BlueSkyでContrail(とGitHubとCloudFlare)を使ってカスタムフィードを発行する方法

この記事は約 37 分で読めます

※この記事は古い記事のため、このまま使用するとフィードが作成できません。
 新しく、ゆーさんあ今壊れているContrailsをForkして直して公開して下さっているので、それを使ってフィードを作る記事を新しく書いています。
 こちらを御覧ください。→「最新版:Contrails(Fork版)を使ってBlueSkyのカスタムフィードを作成する方法・削除する方法

どうもこんにちは、如月翔也(@showya_kiss)です。
 今日はX(Twitter)の競合というか移行先の一つとして挙げられるBlueSkyについて、BlueSkyの目玉機能の一つであるカスタムフィードの作成方法を、プログラム知識無しでできる方法として、「Contrails」というソフトを使って「GitHub」というサービスと「CluodFlare」というサービスを連携させてカスタムフィードを作る方法についてガイドする記事を書こうと思います。
 前提が色々あり何を言っているのかわからないと思いますが、「Contrails」というソフトを使うにあたって「GitHub」というサービスと「CloudFlare」というサービスを使う必要があり、両者とも無料の範囲で十分使えるので、各種サービスの申込みから実際に使うまでを含めてガイドします。
 基本的に「GitHub?なにそれ?」「CloudFlareっておいしいの?」レベルの人に合わせて書くので(というか実際Contrailsを使うまで私もそのレベルでした)、文章量は多いですがメゲないで最後までお付き合いして頂けると幸いです。
 簡単にBlueSkyのカスタムフィードを作る方法としては前回の記事(SkyFeedを使ってBlueSky用のカスタムフィードを発行する方法)があるのですが、今回ガイドする方法はそれよりも難しいですが、SkyFeedのサーバーを使わないので負荷が集中して落ちない利点があり、安定してカスタムフィードを使いたい場合は今回の方法がおすすめです。

BlueSkyとは

BlueSkyとはX(Twitter)に似たSNS・マイクロブログの一種で、短文投稿でつながるタイプのサービスです。
 現在クローズドβサービスが終了して招待制が終わり、一般登録で登録できるようになったので急速にユーザーが増えており、現在BlueSkyは全世界で400万人くらいのユーザー数となっているので、なかなか活気があるので今参加するにはちょうどよい規模だと思います。

BlueSkyのカスタムフィードとは

BlueSkyにはX(Twitter)でいうリスト機能がなく、かわりに複数設定できるミュートリストと、そしてリスト機能の代わりになる「カスタムフィード」という機能があります。
 カスタムフィード機能とは、プログラミングの知識が前提にありますが、ユーザーが全投稿から表示するポストの種類を指定して決まった法則に則ったポストで構成されるタイムラインを作る機能です。もちろん選んだユーザーだけを追加していけば結果的にX(Twitter)のリスト機能と同じ機能になりますし、逆に一歩踏み込んで特定キーワードを含んだ投稿を全て表示させる事もできるので、かなり面白い機能です。
 問題はプログラミングの知識が必要だという部分なんですが、前回の記事に書いたSkyFeedというツールの他に、今回紹介するContrailsというツールを使う事でカスタムフィードを簡単に作る事が可能です。
 今回はこの「Contrails」を使ってカスタムフィードを作る方法をガイドします。
 Contrailsは日本語情報が今のところありませんし、英語のドキュメントも完全なものが見当たらないので、ぜひこのガイドをもとにカスタムフィードの作成を試してみてください。

Contrailsとは

ContrailsとはJerry Chen氏がGitHub上で開発をしている、プログラミングの知識がなくてもCloudFlareというサーバー(無料でかなりの容量が使えるサービスです)上にフィードサーバーを立ててカスタムフィードを発行するツールです。
 GitHub上で開発されているのでGitHubを申し込んでGitHubを使ってツールを使わないといけないのと、CloudFlareのサーバーを使うのでCloudFlareのサービスを申し込まないといけないという点が面倒なんですが、GitHubもCloudFlareも無料サービスの範疇で全然問題ないので申し込み方法を含めてガイドしますので、もう申込済みの人なんかは適宜読み飛ばして頂けると良いと思います。

Contrailsの実行方法

では、Contrailsの実行方法についてですが、まず「全部知っている人」向けに書くと、「GitHubからフォークしてくる」「CloudFlareからワークを作り、APIトークンとワーカーネーム、アカウントIDをコピーしてくる」「GitHubのSecretにCLOUDFLARE_API_TOKENとBLUESKY_APP_PASSWORDを入力」「GitHubのVariableにCLOUDFLARE_WORKER_NAMEとCLOUDFLARE_ACCOUNT_IDとBLUESKY_HANDLEを入力」してから「GitHubでCONFIG.mdを編集」して「GitHubでActionして終了」なのですが、これで分かる人はもうこれ以上この記事を読む必要がないので進まないでいいです。
 この時点で何言っているかわからない人は私もそうだったので、これから順を追って説明していきますのでこわがらないで一緒に手を動かしましょう。

事前準備

ではContrailsを使うための事前準備として、まず最初に2つのサービスを申し込む必要があります。
 「GitHub」というサービスと、「CloudFlare」というサービスです。「GitHub」はプログラム開発者用のプラットフォームのサービスで、「CloudFlare」はレンタルサーバーだと思っておけば大きな問題はありません。
 両方ともメールアドレスとパスワードで申し込みをしてアカウントを取得しないといけないので、次にその方法を説明します。アカウントを既に持っている人は読み飛ばして構いません、

GitHubのアカウントをとる

まずGitHubのアカウントを取得します。
 最初にhttps://github.co.jp/にアクセスします。
 そうすると画面右上に「サインアップ」というボタンがあるのでそれをクリックします。
 「First, let’s create your user account」という画面になり、「Username」「Email Address」「Password」「Email preferences」「Verify your account」と書かれた画面が表示されます。
 ここで「Username」にはお好みのユーザー名を入力し、「Email Address」にはメールが届くメールアドレスを(後で認証に使うので有効なメールアドレスを入れてください)、「Password」にはログインするためのパスワードを入力し。「Email preferences」はチェックなしでオーケー、「Verify your account」にはチェックを入れて、もしかしたらReCapchaが走るかも知れませんが落ち着いて対応してください。Recapchaが済むと画面一番下の「 Create account」が緑色になって押せるようになるので押します。
 「Create account」を押すと画面が切り替わり、8文字の数字を入れる認証画面になりますので、今入力したメールアドレスに8桁の数字が書かれたメールが届いているのでそれをコピーして貼り付けてください。手打ちでもいいです。
 この認証が終わると「dashboard」に移動します。移動したらアカウントができた証拠なので「GitHub」のアカウントは取れた事になります。準備段階1個目が終了です。GitHubの画面は一回閉じましょう。

CloudFlareのアカウントを取る

次にCloudFlareのアカウントを取ります。
 最初にhttps://www.cloudflare.com/ja-jp/にアクセスします。
 そうすると画面右上にサインアップという文字があるのでそれをクリックします。
 「Cloudflare で始めましょう」というページになるので、「メールアドレス」と「パスワード」を入力します。
 メールアドレスは後で認証に使うので有効なものを設定し、パスワードはログインに使用するものを設定する必要があるのでしっかり考えて設定してください。入力したら「サインアップ」のボタンを押します。
 そうすると画面が切り替わって「CloudFlare」の画面になるのですが、まずメールを確認してCloudFlareからのメールを探し、「Please verify your email address」というメールが届いているのでその中のリンクをクリックして認証を行っておいてください。
 画面下半分が真っ白ですが、これでCloudFlareのアカウントも取れましたので、準備段階の第2段階が終了です。あとはちょこちょこ設定すればおしまいなので楽勝です。CloudFlareの画面は一旦閉じてしまって下さい。

BlueSky・CloudFlareから必要情報を取る

では、準備段階が終わったので実際にContrailsをセッティングする方法に移ります。
 いくつかコピーする物があるのでテキストファイルを開いておいて下さい。
 順番に、BlueSkyからユーザー名とApp Password、CloudFlareからはアカウントID、ワーカー名、APIトークンをコピーしてきます。
 手順は以下の通りです。

BlueSkyからコピーしてくる情報

BlueSkyからは「ユーザー名」と「App Password」をコピーしてきます。
 「ユーザー名」はBlueSkyのユーザー名です。(例:showya.bsky.social)わからなければBlueSkyのアプリを開き、ハンバーガーメニューから「Profile」を選び、表示されるプロフィール画面のユーザ名の下、@username.bsky.socialの@を除いてそれ以降をコピーしてテキストに貼り付けてください。「username.bsky.social」という形になります。
 App Passwordは使うアプリごとに作成するパスワードで、ハンバーガーメニューから「Setting」を選び、画面の中の「Advanced」の中に「App passwords」があるのでそれを選択、切り替わった画面下で「Add App Password」を押して「Please enter a unique name for this App Password or use our randomly generated one.」という表示の下に記入欄があるのでなんのパスワードかわかる名前を入力して入力欄の完了、または画面下の「App〜」を押すと「Here is your app password.」と表示されて英数字4文字が4組ハイフンで繋がれたパスワードが表示されるので、これをコピーしてテキストに貼り付けて置いて下さい。このパスワードは一回「Done」ボタンで消したらもう二度と見えなくなるので確実にコピペしておいて下さい。
 これでBlueSkyのユーザー名とApp Passwordのコピーが取れたので、次はCloudFlareの必要情報を取りに行きます。

CloudFlareからコピーしてくる情報

CloudFlareからはアカウントID、ワーカー名、APIトークンをコピーしてきます。
 まずhttps://www.cloudflare.com/ja-jp/にアクセスし、画面右上の「ログイン」を押します。
 画面が切り替わり、前回と違って画面左と下にも情報が書かれているのを確認して、それから画面左側にある「Worker & Pages」をクリックします。
 すると「Workers & Pages を始めましょう」のページに移動するので、画面中央にある「ワーカーの作成」をクリックします。
 画面が切り替わり「作成”Hello World” スクリプト」という画面になるので、画面中程にある「名前」の項目を好きなアプリ名に書き換えます。これは内部的にしか使わないので、私は「showyabskysocial」としました。入力したら、「名前」の項目を「ワーカー名」としてメモしておきます。その上で画面右下の「デプロイ」を押します。
 画面が切り替わって「おめでとうございますワーカーはリージョンにデプロイされます: Earth」という表示になったらワーカー名が有効になったという事なので成功です。
 次に画面右上にある人物アイコンをクリックして「マイ プロフィール」をクリックします。画面が切り替わりますので、画面左側の「APIトークン」をクリックします。
 「API トークン」の画面に切り替わり、画面内に「トークンを作成する」というボタンがあるので押します。
 切り替わった画面、「Cloudflare Workers を編集する」の横にある「テンプレートを利用する」をクリックします。
 切り替わった画面を下まで送り、「アカウント リソース」の項目を「包含」はそのままに右の項目を「すべてのアカウント」に変更し、次の「ゾーン リソース」の項目を「包含」はそのままに右の項目を「すべてのゾーン」に変更し、画面一番下の「概要に進む」をクリックします。
 そうすると「Cloudflare Workers を編集する API トークンの概要」の画面に進むので、画面下の「トークンを作成する」をクリックします。
 これで「Cloudflare Workers を編集する API トークンの作成に成功しました」という画面に進み、画面内にCopyと書かれた領域にAPIトークンが表示されるので、これをコピーしてAPIトークンとしてテキストにコピペしておきます。
 最後にアカウントIDを取得します。一度画面左上の「CloudFlare」のアイコンをクリックしてホーム画面に戻り、そして画面左側の「Workers & Pages」をクリックします。
 すると概要のページが表示され、画面右側のアカウントの詳細の中に「アカウントID」という項目が表示されているので、このコピー枠をコピーして、「アカウントID」としてテキストに保存します。
 これで事前の準備が全部終わりました。

念のため、BlueSkyのユーザー名、App Password、CloudFlareのアカウントID、APIトークン、ワーカー名が全部テキストにコピーされているか確認して下さい。

GitHubで「Contrails」をフォークする

では、実際にGitHubでContrailsを使う方法について説明していきます。
 ContrailsはJerry Chen氏が自分のGitHubでコードを公開してくれているので、このコードを(正確にはリポジトリと言いますが気にしなくていいです)自分の領域に持ってきて書き換えられるようにします(正確にはフォークと言いますが気にしなくていいです)。
 まずコピー元のリポジトリを見るために、https://github.com/jcsalterego/Contrailsにアクセスします。
 さっきログインしているので画面右上の人物アイコンは自分のまま、Jerry Chen氏のContrailsのGitHubリポジトリが表示されます。
 この画面の上に「Fork」という項目に数字がついているボタンがあると思いますが、それをクリックします。
 「Create a new fork」という画面になり、色々な設定がある画面になりますが、そのまま画面下の「Create fork」を押して構いません。将来的にContrailsで複数のフィードを作る時はリポジトリ名(repository name)を変えてフォークしていくつかフィードを作る事ができますが、それはおいおいGitHubを理解してからでいいので今回はスルーします。
 しばらく待たされたあと、自分のリポジトリに移動して「Contrails(名前を変えた場合変えた名前の)」のフォークの画面に移行しますので、これでツールのコピーは終了です。
 あとは変数を入力してフィードの設定をしておしまいです。あと一歩です!

GitHubでSecretsとVariablesを入力する

自分のリポジトリのContrailsの画面が開いているので、さっきの作業で手に入れたBlueSkyのユーザー名、App PassWord、CloudFlareのワーカー名、アカウントID、APIトークンを変数として設定する必要があります。
 まず画面上の「Settings」をクリックして画面を切り替え、画面左下にある「Secrets and variables」をクリックして開き、「Acttion」を選択します。
 「Actions secrets and variables」の画面が開きますので、まず「Secrets」が選ばれている状態で「New Repository Secret」を選びます。
 そうすると「Name」と「Secret」を入力する画面が開くので、まず「Name」に「CLOUDFLARE_API_TOKEN」を入力、「Secrets」に先程コピペしたCloudFlareのAPIトークンを入力して「Add Secret」を押します。
 次にまた「New Repository Secret」を選び、次は「Name」に「BLUESKY_APP_PASSWORD」、「Secret」にBlueSkyのApp Passwordを入力して「Add Secret」を押します。
 その次は画面上の今「Secrets」が選ばれているのを「Valiables」にクリックして切り替え、「New Repository Valiables」をクリックします。
 そうすると「Name」と「Value」を入力する画面が開きますので、まず「Name」には「CLOUDFLARE_WORKER_NAME」を入力し、「Value」にはCloudFlareのワーカー名を入力して「Add Valiable」をクリックします。
 続いてまた「New Repository Valiables」をクリックし、「Name」に「CLOUDFLARE_ACCOUNT_ID」を、「Value」にはCloudFlareのアカウントIDを入力して「Add Valiable」をクリックします。
 最後にもう一度「New Repository Valiables」をクリックして、「Name」に「BLUESKY_HANDLE」を、「Value」にBlueSkyのユーザー名を入力して「Add Valiable」をクリックします。

お疲れ様でした。これでContrailsを使うための設定が全て終わりました。
 あとはContrailsで作るフィードの設定を行い、GitHubで実行するだけの状態になりました。
 長い間頑張って作業していただきありがとうございました。
 では、最後にフィードの設定方法について説明します。

Contrailsでフィードを作る設定

Contrailsはリポジトリにある「CONFIG.md」を編集してからGitHubで実行する事によってフィードが発行されるシステムです。
 なので、カスタムフィードを作るには「CONFIG.md」を編集する必要があります。
 手っ取り早く「CONFIG.md」を編集するには、GitHubの画面左上にある「Code」をクリックし、開いた画面にある「CONFIG.md」をクリックして開き、画面右にある「鉛筆マーク」をクリックして「Edit in place」を選ぶ事で編集する事ができます。
 Contrailsで設定できるフィードの種類は、「特定のユーザーのポスト全て」と「検索ワード」と「特定の固定ポスト」の三種類です。
 全て「のいずれか」で設定できるので、「特定のユーザーのポスト全て」で特定ユーザーを複数設定すればX(Twitter)で言うリストになりますし、ただ「検索ワード」を列挙すれば列挙したキーワードのどれかが含まれた投稿全てがフィードとして発行されます。「特定の固定ポスト」については単体のポストがフィードとして出力されます。どう設定するかを考えてみて下さい。私は「キーワードのリスト」か「特例のユーザーを列挙してリストを作る」かのいずれかをおすすめします。

では「CONFIG.md」の編集部分について説明します。
 編集自体は先程書いたように「Code」から「CONFIG.md」を開いて「鉛筆マーク」から「Edit in place」を押せば編集が可能で、上書きするにはその上にある「Commit Changes…」を押せば上書きできます。万が一覚えていない部分を書き換えてもとに戻したい場合は「Cansel Changes」で変更部分を破棄できます。

# recordName について

「# recordName」に続く行、「emotional-support-pets」と書かれている行はレコードネームです。内部的に使い名前なので適当に書き換えて構いません。アルファベットと数字、ハイフンだけで15文字以内で設定しましょう。
 自分のリストなら「My−List」とかでいいと思います。

# displayName について

「# displayName」に続く行、「Emotional Support Pets」と書かれている行はフィードネームです。BlueSkyで表示されるフィードの名前になるので迂闊な名前は避けましょう。レコードネームと違って全角文字やスペースが使えます。24文字以内の制限があります。
 自分のリストなら「翔也’sリスト」とかでいいと思います。

# description について

「# description」に続く行、「Cute animals feed」と書かれている行はフィードの概要です。BlueSkyで表示されるフィードの概要になりますので迂闊な言葉は避けた方が良いでしょう。レコードネームと違って全角文字やスペースが使えますが、長すぎるとカットされるかエラーが出る恐れがあるので適切な分量を書きましょう。
 自分のリストなら「如月翔也がフォローしている人一覧」とかでいいと思います。

# searchTerms について

「# searchTerms」に続く行、「- 」から始まって色々書かれている行ですが、これがカスタムフィードの主役である検索方法についてです。
 「- 」で列挙されたものが全て「いずれかを含む」でポスト検索され、その結果がフィードとして出力されます。
 書き方については「キーワード検索」については1キーワードごとに「- キーワード」と入力して行きます。
 犬と猫のいずれかを含むポストを拾いたい場合、「- 犬」「- 猫」と2行にわけて書けばいいです。キーワードを増やしたい場合どんどん行を追加して下さい。
 なお、キーワードの中に「/」を入れるとURLとして判断されてエラーを吐くので、「/」を使う場合「\/」(大文字のVじゃなく半角文字2個です)と書いてエスケープして下さい。エスケープと言うと意味がわからないですが、「\/」に置き換えて書くとエラーを吐かないという意味で理解して貰って大丈夫です。

特定のユーザーのポストを拾いたい場合「- ユーザーのプロフィールURL」を記載します。ユーザーのプロフィールURLはBlueSkyで特定のユーザーのプロフィールを見て、プロフィールの横にある三点リーダアイコンから「Share」を選ぶとコピーされるURLです。如月翔也の場合「https://bsky.app/profile/showya.bsky.social」です。
 オプションとして半角スペースを開けた後に「+replies」と「+reposts」があります。「+replies」はその人へのリプライを含む、「+reposts」はその人がしたリポストを含みます。
 実例でいうと「- https://bsky.app/profile/showya.bsky.social +replies +reposts」入力すれば如月翔也のポスト、如月翔也へのリプライ、如月翔也がリポストした投稿を拾ってくれます。
 ユーザーを複数追加したい場合どんどん行を追加して行って下さい。

特定のポストを拾いたい場合、「- ポストのURL」を記載します。
 ポストのURLはブラウザ版BlueSkyでポストを見た時に表示されるURLです。如月翔也のここ1年で一番頑張ったポストを表示させる場合、「- https://bsky.app/profile/showya.bsky.social/post/3k46qdufzy32p」と記載します。
 特定のポストを複数拾いたい場合、どんどん行を追加して行って下さい。

基本的にはそれだけです。元々記載されている
「- https://bsky.app/profile/saddymayo.bsky.social/post/3jxju2wwap22e」
「- cats」
「- dogs」
「- penguins」
「- red pandas」
「- quokkas」
 は残さず消してしまいましょう。

# denyList について

「# denylist」に続く行、「# – 」から始まって色々書かれている行ですが、これがカスタムフィードの主役である検索方法で「除外する」要素の指定についてです。
 現在は「#」でコメントアウトされているので除外指定はありませんが、「searchTerms」と同じ指定方法で除外する要素を指定する事が出来ます。
 例えば「狐」を除きたい場合、下に新しく行を作って「- 狐」と指定すればオーケーです。

# safeMode について

「# safeMode」に続く行、「true」が記載されている行はContrailsのセーフモードのオンオフについてです。trueだとオンになり、falseと書くとオフになります。
 CloudFlareの無料上限に引っかかった場合に止めてくれるモードですが、よほどの事がない限り無料上限に達する事はないので、後述の理由もありfalseの方がいいかもしれません。
 falseの方が良い理由としては、上述の「serchTerms」で設定した条件ですが、safemodeがtrueだと上から7個までしか処理してくれないのです。
 falseにすると無制限で処理してくれるので、条件が7つ以上ある人はfalseにした方が良いかも知れません。

# avatar について

「# avatar」に続く行、「![](avatar.png)」が記載されている行については、フィードのアイコンを指定する行です。この記載ではGitHubのリポジトリにアップロードされている「avatar.png」が指定されていますが、別のアイコンを同じリポジトリにアップして「![](ファイル名)」と記載するとアイコンを変更できます。
 自分でアイコンを作りたい人はアップして変更してみて下さい。

以上、設定したら設定を上書きして終わります。

以上、フィードの設定と検索条件など全て書き終わりましたら、もう一度内容に不備がないかを確認して、画面の右上にある「Commit Changes…」をクリックします。
 「Commit Message」という画面が出て入力画面がでますが、特に何も書かずに右下の「Commit Changes」ボタンを押して構いません。
 これでContrailsの設定は全て終わりました。
 あとはGitHubで実行してFeedを発行するだけです。

GitHubでActionを使いフィードを発行する

設定は全て終わったのでGitHubでツールを実行してカスタムフィードを作成したいと思います。
 今Commit Changesを行ったという事は、GitHubで「Contrails/CONFIG.md」という画面が開いていると思いますが、その「Contrails」という文字がクリックできるのでクリックし、画面を切り替えます。

切り替わった画面、上に「Action」という項目があるのでクリックし、切り替わった画面で「Workflows aren’t being run on this forked repository」という渓谷が出ますので、「I understand my workflows, go ahead and enable them」ボタンを押します。
 すると画面が切り替わり、画面左側に「All Action Flow」と表示され、「1.Check requirement」「2.Deploy to Cloudflare」「3.Publish Feed Generators」という項目が並んでいると思います。
 これを1個ずつ実行します。

まず最初に「1.Check requirements」をクリックします。画面が切り替わり右側に「Run workflow」というボタンがありますのでそれをクリックし、開くメニューで「Run workflow」をクリックします。
 ちょっと時間がかかり、「Check Requirements」という文字の横のアイコンが変わるのですが、最終的に緑のチェックマークになったら成功です。茶色のままや赤アイコンの場合設定のどこかに問題があって進めない状態なのでアイコンをクリックするとエラーが出るので、なんのSecret、またはVisibleが設定されていないのかがわかると思います。

緑色のアイコンになったら問題ないので「2.Deploy to Cloudflare」をクリックし、切り替わった画面で「Run workflow」というボタンがありますのでそれをクリックし、開くメニューで「Run workflow」をクリックします。
 結構時間がかかりますが、エラーが出なければ最終的に「Deploy to Cloudflare」の横のアイコンが緑になるので、そうなれば成功です。

最後に「3.Publish Feed Generators」をクリックし、切り替わった画面で「Run workflow」から「Run Workflow」を選んで下さい。
 これも結構時間がかかりますが、設定に問題がなければ最終的に緑アイコンになります。
 これが緑アイコンになればContrailsでのカスタムフィード作成は成功です。
 作成されたフィードはBlueSkyに登録され、BlueSkyであなたのプロフィール画面の「Feeds」を開くと、CONFIG.mdで指定した名前のフィードができています。これを+ボタンで追加し、必要であればFeedwp選んでからピンボタンで固定して使う事で、カスタムフィードが使えるようになります。
 もし作ったフィードのリンクを誰かに共有したい場合は、作ったフィードを開きフィードの中の矢印(共有)ボタンを使えばフィードのリンクを共有する事ができるので、それで宣伝すればいいと思います。

これであなただけのカスタムフィードができました!
 大変長い文章、長い手続き、長い設定でしたが結果に繋がりましたでしょうか?
 SkyFeedを使ったカスタムフィードより遥かに難しいのですが、その分Contrailsを使ったやりかたはサーバーがCloudFlareなのでとても頑丈で、SkyFeedで作ったフィードのように不安定になる事がほぼないので非常に安全です。
 重いリストを作る場合、負荷を考えてSkyFeedでなくContrailsを使う事をおすすめします。
 まあ両方使い分けていくのが一番なので、両方やり方を知っておくといいですよね!

まとめ

というわけで、ContrailsとGitHubとCloudFlareを使ってカスタムフィードを発行する方法のガイドでした。
 非常に大変ですが、堅牢性がとんでもないのでぜひやり方を覚えてフィードを作ってみて下さいね……!

おまけ

複数のフィードを作りたい場合、GitHubで作った自分のForkを「Setting」から「Template repository」にチェックを入れてテンプレートにし、自分のForkしたContrailsを開いて「Use This Template」が表示されるのでそこから「Create New Repository」で新しくリポジトリを作り、新しいリポジトリを作ってからCloudFlareで別の名前のワークを作成してワーク名を変える、で対応できるはずなので、複数作りたい人は頑張ってみて下さい!

この記事を書いた人 Wrote this article

如月翔也 男性

如月翔也です。ガジェットとAppleが大好きな中年男です。ガジェットがお好きな方、Appleがお好きな方、トラブルでお困りの方はぜひブログをごらん下さい。コメントを貰うと非常に喜ぶのでお気軽にコメントをお願いします。  詳細なプロフィールは「https://saigetudo.com」を御覧ください!