RSS愛好会 は、新聞社等のサイトでRSSフィードが配信されていない場合に代わりにフィード配信を行うためのサービスです。
ウェブサイトのフロントエンド、管理システム、クローラーの3つに大きく機能分割されています。
RSS愛好会のウェブサイト本体です。
- 言語: TypeScript 4.7
- フレームワーク: Next.js 12.x
- Linter: ESLint
- CI/CD: Vercel
- インフラ: Vercel
フィードの管理システムです。
Googleスプレッドシート 上のフィードデータをJSONに変換し、Amazon S3にアップロードします。
アップロードされたJSONファイルはフロントエンドから呼び出されます。
- 言語: TypeScript 4.7
- Linter: ESLint
- CI/CD: GitHub Actions
- デプロイ: Clasp
- インフラ: Google App Script
RSS愛好会で配信するためのフィードを各外部サイトから収集するためのクローラーです。
- 言語: Ruby 2.7
- フレームワーク: Ruby on Rails 7.0
- テスト: RSpec
- Linter: RuboCop
- CI/CD: GitHub Actions
- デプロイ: Serverless Framework
- インフラ: AWS Lambda
- ソースコードを フォーク します。
- ブランチを切ります。 (
git checkout -b feature/hogehoge
) - 変更をコミットします。 (
git commit -am ':sparkles: 何やらを追加する'
) - ブランチをプッシュします。 (
git push origin feature/hogehoge
) - プルリクエストを作成します。
- コミットメッセージの先頭に gitmoji を使用してください。
- コミットメッセージは「○○する」といった動詞で記述してください。
現在はESLintおよびRuboCopによるコーディングスタイルの検証と、各種クローラーのテスト行っています。
クローラーの追加時には、対応するテストも追加する必要があります。
main
ブランチに対して行ってください。
その際、改修対象機能群のテストを全て通過する必要があります。
プルリクエストがマージされた際に、変更対象に応じたCI/CDが自動的に実行されます。