30秒で分かる要点
rakuten-blogtoolとは?
rakuten blogtool 楽天市場の商品データを取得し、AIで読者本位の記事を1本ずつ生成してGitHub Pagesへ自動公開する静的ブログです 主にJavaScriptを使用し、公開コミットから機能追加と改善を積み重ねた過程を確認できます。
01 / 概要
プロジェクトの概要と目的
rakuten blogtool 楽天市場の商品データを取得し、AIで読者本位の記事を1本ずつ生成してGitHub Pagesへ自動公開する静的ブログです。GitHub Actionsのcronは毎週火・金曜日の日本時間8:17に動きます。 セットアップ 1. 楽天Web ServiceでアプリID・アクセスキーを、楽天アフィリエイトでアフィリエイトIDを取得します。 2. GitHubリポジトリの Settings Secrets and variables Actions に次を登録します。 Secrets: OPENAI API KEY , RAKUTEN APPLICATION ID , RAKUTEN ACCESS KEY , RAKUTEN AFFILIATE ID Variables: SITE URL , ARTICLE KEYWORDS , BLOG NAME , BLOG DESCRIPTION , OPENAI MODEL (任意) 3. Settings Pages Source を GitHub Actions にします。 4. Actionsの Generate and publish article を手動実行し、初回記事を確認します。 ARTICLE KEYWORDS はカンマ区切りです。最も記事数が少ないテーマが選ばれ、同じテーマへの偏りを抑えます。 ローカル確認 .env.example を参考に環境変数を設定してから実行します。 品質・コンプライアンス 楽天APIの商品データ以外の性能や使用体験を創作しないプロンプト JSON Schema、参照商品ID、slug、meta descriptionの自動検証 1回1記事・週2回の公開制限、重複slug防止 rel="sponsored nofollow" 、広告表示、価格変動表示、AI利用開示 Article構造化データ、canonical、sitemap、robots、意味的HTML 自動生成は最終的な正確性を保証しません。公開後の記事とリンク先情報を定期的に人が監査してください。
本記事は公開されている構成と main ブランチのコミットを一次情報として整理しています。
02 / 使用技術
使用技術と役割
主要な実装言語として、プロダクトの中心機能を構成します。
03 / 設計
構成から読み解く設計
主な項目は です。
- 単一アプリケーション構成
- 機能単位の責務分割
04 / 変更履歴
コミットから見る実装の変遷
以下は既定ブランチの直近の変更です。リンク先で原文と一次情報を確認できます。
- 不具合や設定を修正d5bc8e7をGitHubで確認 ↗
- 不具合や設定を修正4c5a93dをGitHubで確認 ↗
- 不具合や設定を修正164918bをGitHubで確認 ↗
- 支援・購入への導線を追加するe870ac5をGitHubで確認 ↗
- 不具合や設定を修正a3bf939をGitHubで確認 ↗
- 実装内容を更新711f8bcをGitHubで確認 ↗
05 / 学び
このプロジェクトから得られる学び
- 変更を小さく記録する
コミット単位で目的を分けると、実装の意図を追跡しやすくなります。
- 構成と技術選定を結び付ける
JavaScriptの採用理由と各ディレクトリの責務を説明できることが保守性につながります。
- READMEと実装を同時に育てる
説明とコードを近い状態に保つことが、再利用と振り返りを助けます。
06 / よくある質問
よくある質問
rakuten-blogtoolは何を作るプロジェクトですか?
rakuten blogtool 楽天市場の商品データを取得し、AIで読者本位の記事を1本ずつ生成してGitHub Pagesへ自動公開する静的ブログです
rakuten-blogtoolの主要技術は何ですか?
JavaScriptを中心に構成されています。
この記事の情報源は何ですか?
公開README、リポジトリ構成、既定ブランチのGitHubコミット履歴です。
コメント
この記事へのコメント
お名前だけで投稿できます。アカウント登録やログインは不要です。 いただいたコメントは確認のうえ公開します。