[{"data":1,"prerenderedAt":574},["ShallowReactive",2],{"navigation_docs":3,"-git-pull-request":190,"-git-pull-request-surround":569},[4,136,150,183],{"title":5,"path":6,"stem":7,"children":8},"Frontend","\u002Ffrontend","1.frontend",[9,13,39,76,109,130],{"title":10,"path":6,"stem":11,"order":12},"フロントエンド ガイドライン","1.frontend\u002Findex",1,{"title":14,"path":15,"stem":16,"children":17},"HTML","\u002Ffrontend\u002Fhtml","1.frontend\u002F1.html\u002Findex",[18,19,23,27,31,35],{"title":14,"path":15,"stem":16},{"title":20,"path":21,"stem":22},"コードスタイル","\u002Ffrontend\u002Fhtml\u002Fcode-style","1.frontend\u002F1.html\u002Fcode-style",{"title":24,"path":25,"stem":26},"見出しタグ","\u002Ffrontend\u002Fhtml\u002Fheading","1.frontend\u002F1.html\u002Fheading",{"title":28,"path":29,"stem":30},"img タグ","\u002Ffrontend\u002Fhtml\u002Fimg","1.frontend\u002F1.html\u002Fimg",{"title":32,"path":33,"stem":34},"パスとリンク","\u002Ffrontend\u002Fhtml\u002Flink","1.frontend\u002F1.html\u002Flink",{"title":36,"path":37,"stem":38},"品質管理","\u002Ffrontend\u002Fhtml\u002Fquality","1.frontend\u002F1.html\u002Fquality",{"title":40,"path":41,"stem":42,"children":43},"CSS","\u002Ffrontend\u002Fcss","1.frontend\u002F2.css\u002Findex",[44,45,49,52,56,60,64,68,72],{"title":40,"path":41,"stem":42},{"title":46,"path":47,"stem":48},"命名規則・コンポーネント設計","\u002Ffrontend\u002Fcss\u002Farchitecture","1.frontend\u002F2.css\u002Farchitecture",{"title":20,"path":50,"stem":51},"\u002Ffrontend\u002Fcss\u002Fcode-style","1.frontend\u002F2.css\u002Fcode-style",{"title":53,"path":54,"stem":55},"Web フォント","\u002Ffrontend\u002Fcss\u002Ffonts","1.frontend\u002F2.css\u002Ffonts",{"title":57,"path":58,"stem":59},"記述順番","\u002Ffrontend\u002Fcss\u002Forder","1.frontend\u002F2.css\u002Forder",{"title":61,"path":62,"stem":63},"プロパティのルール","\u002Ffrontend\u002Fcss\u002Fproperties","1.frontend\u002F2.css\u002Fproperties",{"title":65,"path":66,"stem":67},"Tailwind CSS","\u002Ffrontend\u002Fcss\u002Ftailwind","1.frontend\u002F2.css\u002Ftailwind",{"title":69,"path":70,"stem":71},"値のルール","\u002Ffrontend\u002Fcss\u002Fvalues","1.frontend\u002F2.css\u002Fvalues",{"title":73,"path":74,"stem":75},"CSS 変数（カスタムプロパティ）","\u002Ffrontend\u002Fcss\u002Fvariables","1.frontend\u002F2.css\u002Fvariables",{"title":77,"path":78,"stem":79,"children":80},"JavaScript","\u002Ffrontend\u002Fjs","1.frontend\u002F3.js\u002Findex",[81,82,85,89,93,97,101,105],{"title":77,"path":78,"stem":79},{"title":20,"path":83,"stem":84},"\u002Ffrontend\u002Fjs\u002Fcode-style","1.frontend\u002F3.js\u002Fcode-style",{"title":86,"path":87,"stem":88},"エラーハンドリング","\u002Ffrontend\u002Fjs\u002Ferror-handling","1.frontend\u002F3.js\u002Ferror-handling",{"title":90,"path":91,"stem":92},"ライブラリの利用","\u002Ffrontend\u002Fjs\u002Flibraries","1.frontend\u002F3.js\u002Flibraries",{"title":94,"path":95,"stem":96},"HTML への読み込み","\u002Ffrontend\u002Fjs\u002Floading","1.frontend\u002F3.js\u002Floading",{"title":98,"path":99,"stem":100},"モジュール","\u002Ffrontend\u002Fjs\u002Fmodule-structure","1.frontend\u002F3.js\u002Fmodule-structure",{"title":102,"path":103,"stem":104},"命名規則","\u002Ffrontend\u002Fjs\u002Fnaming","1.frontend\u002F3.js\u002Fnaming",{"title":106,"path":107,"stem":108},"パフォーマンス最適化","\u002Ffrontend\u002Fjs\u002Fperformance","1.frontend\u002F3.js\u002Fperformance",{"title":110,"path":111,"stem":112,"children":113},"画像・メディアリソースガイドライン","\u002Ffrontend\u002Fmedia","1.frontend\u002F4.media\u002Findex",[114,115,119,123,127],{"title":110,"path":111,"stem":112},{"title":116,"path":117,"stem":118},"アクセシビリティ","\u002Ffrontend\u002Fmedia\u002Faccessibility","1.frontend\u002F4.media\u002Faccessibility",{"title":120,"path":121,"stem":122},"画像フォーマット","\u002Ffrontend\u002Fmedia\u002Fformats","1.frontend\u002F4.media\u002Fformats",{"title":124,"path":125,"stem":126},"ファイル命名規則","\u002Ffrontend\u002Fmedia\u002Fnaming","1.frontend\u002F4.media\u002Fnaming",{"title":106,"path":128,"stem":129},"\u002Ffrontend\u002Fmedia\u002Foptimization","1.frontend\u002F4.media\u002Foptimization",{"title":131,"path":132,"stem":133,"children":134},"開発環境テンプレート","\u002Ffrontend\u002Fenvironment","1.frontend\u002F5.environment\u002Findex",[135],{"title":131,"path":132,"stem":133},{"title":137,"path":138,"stem":139,"children":140,"page":149},"Deploy Release","\u002Fdeploy-release","2.deploy-release",[141,145],{"title":142,"path":143,"stem":144},"デプロイ","\u002Fdeploy-release\u002Fdeploy","2.deploy-release\u002Fdeploy",{"title":146,"path":147,"stem":148},"リリース","\u002Fdeploy-release\u002Frelease","2.deploy-release\u002Frelease",false,{"title":151,"path":152,"stem":153,"children":154},"Git","\u002Fgit","3.git",[155,159,163,167,171,175,179],{"title":156,"path":152,"stem":157,"order":158},"Git ガイドライン","3.git\u002Findex",3,{"title":160,"path":161,"stem":162},"ブランチ戦略","\u002Fgit\u002Fbranch","3.git\u002Fbranch",{"title":164,"path":165,"stem":166},"CI\u002FCD運用","\u002Fgit\u002Fcicd","3.git\u002Fcicd",{"title":168,"path":169,"stem":170},"コミットメッセージとタグ","\u002Fgit\u002Fmessage","3.git\u002Fmessage",{"title":172,"path":173,"stem":174},"Pull Request運用","\u002Fgit\u002Fpull-request","3.git\u002Fpull-request",{"title":176,"path":177,"stem":178},"リポジトリ運用","\u002Fgit\u002Frepository","3.git\u002Frepository",{"title":180,"path":181,"stem":182},"GitHub権限・セキュリティ","\u002Fgit\u002Fsecurity","3.git\u002Fsecurity",{"title":184,"path":185,"stem":186,"children":187,"order":189},"AI 利用ガイドライン","\u002Fai","4.ai\u002Findex",[188],{"title":184,"path":185,"stem":186,"order":189},4,{"id":191,"title":172,"body":192,"description":564,"extension":330,"links":565,"meta":566,"navigation":348,"path":173,"seo":567,"stem":174,"__hash__":568},"docs\u002F3.git\u002Fpull-request.md",{"type":193,"value":194,"toc":554},"minimark",[195,200,204,209,222,234,238,242,245,315,319,323,326,480,492,496,499,508,511,514,529,541,544,550],[196,197,199],"h2",{"id":198},"prの作成ルール","PRの作成ルール",[201,202,203],"p",{},"Pull Request（PR）は、コードの品質を保ち、チーム全体で知識を共有するための重要なプロセスです。",[205,206,208],"h3",{"id":207},"prを作成するタイミング","PRを作成するタイミング",[210,211,212,216,219],"ul",{},[213,214,215],"li",{},"機能開発やバグ修正が完了したとき",[213,217,218],{},"レビューを受けたいとき",[213,220,221],{},"早期フィードバックが欲しい場合（Draft PR として作成）",[223,224,225,231],"tip",{},[201,226,227,228],{},"Draft PR の活用",[229,230],"br",{},[201,232,233],{},"実装途中でもフィードバックが欲しい場合は、Draft PR（下書き状態のPR）を作成することで、早い段階で方向性を確認し、手戻りを防げます。",[205,235,237],{"id":236},"prのタイトルとディスクリプション","PRのタイトルとディスクリプション",[239,240,241],"h4",{"id":241},"タイトルの書き方",[201,243,244],{},"PRのタイトルは、変更内容を簡潔に表現します。",[246,247,248,286],"tabs",{},[249,250,253],"tabs-item",{"icon":251,"label":252},"i-lucide-check","良い例",[254,255,260],"pre",{"className":256,"code":257,"language":258,"meta":259,"style":259},"language-sh shiki shiki-themes github-light material-theme material-theme-palenight","feat: ユーザー認証機能の追加\nfix: ログインフォームのバリデーションエラー修正\nAPI クライアントのエラーハンドリング改善\nユーザー一覧ページのパフォーマンス改善\n","sh","",[261,262,263,270,276,281],"code",{"__ignoreMap":259},[264,265,267],"span",{"class":266,"line":12},"line",[264,268,269],{},"feat: ユーザー認証機能の追加\n",[264,271,273],{"class":266,"line":272},2,[264,274,275],{},"fix: ログインフォームのバリデーションエラー修正\n",[264,277,278],{"class":266,"line":158},[264,279,280],{},"API クライアントのエラーハンドリング改善\n",[264,282,283],{"class":266,"line":189},[264,284,285],{},"ユーザー一覧ページのパフォーマンス改善\n",[249,287,290],{"icon":288,"label":289},"i-lucide-x","悪い例",[254,291,293],{"className":256,"code":292,"language":258,"meta":259,"style":259},"update\nfix bug\n変更\nPR\n",[261,294,295,300,305,310],{"__ignoreMap":259},[264,296,297],{"class":266,"line":12},[264,298,299],{},"update\n",[264,301,302],{"class":266,"line":272},[264,303,304],{},"fix bug\n",[264,306,307],{"class":266,"line":158},[264,308,309],{},"変更\n",[264,311,312],{"class":266,"line":189},[264,313,314],{},"PR\n",[316,317,318],"note",{},"Conventional Commits の形式を使用することもできますが、必須ではありません。\nプロジェクトに応じて、適切な命名規則を採用してください。",[239,320,322],{"id":321},"ディスクリプション説明文の書き方","ディスクリプション（説明文）の書き方",[201,324,325],{},"PRの説明文は、プロジェクトに応じて適切な内容を記載してください。以下は参考例です：",[254,327,332],{"className":328,"code":329,"language":330,"meta":331,"style":259},"language-md shiki shiki-themes github-light material-theme material-theme-palenight","## 変更内容\n\n\u003C!-- 何を変更したかを簡潔に説明 -->\n\n## 変更理由\n\n\u003C!-- なぜこの変更が必要だったかを説明 -->\n\n## 確認方法\n\n\u003C!-- レビュアーが動作確認できる手順 -->\n\n## スクリーンショット（該当する場合）\n\n\u003C!-- UI変更がある場合はスクリーンショットを添付 -->\n\n## チェックリスト\n\n- [ ] ローカルで動作確認済み\n- [ ] テストを追加または更新した\n- [ ] ドキュメントを更新した（必要な場合）\n- [ ] Breaking Changeがある場合は明記した\n","md","PRテンプレート例（参考）",[261,333,334,344,350,356,360,368,373,379,384,392,397,403,408,416,421,427,432,440,445,456,464,472],{"__ignoreMap":259},[264,335,336,340],{"class":266,"line":12},[264,337,339],{"class":338},"sYTcu","## ",[264,341,343],{"class":342},"sVd3c","変更内容\n",[264,345,346],{"class":266,"line":272},[264,347,349],{"emptyLinePlaceholder":348},true,"\n",[264,351,352],{"class":266,"line":158},[264,353,355],{"class":354},"su8Ar","\u003C!-- 何を変更したかを簡潔に説明 -->\n",[264,357,358],{"class":266,"line":189},[264,359,349],{"emptyLinePlaceholder":348},[264,361,363,365],{"class":266,"line":362},5,[264,364,339],{"class":338},[264,366,367],{"class":342},"変更理由\n",[264,369,371],{"class":266,"line":370},6,[264,372,349],{"emptyLinePlaceholder":348},[264,374,376],{"class":266,"line":375},7,[264,377,378],{"class":354},"\u003C!-- なぜこの変更が必要だったかを説明 -->\n",[264,380,382],{"class":266,"line":381},8,[264,383,349],{"emptyLinePlaceholder":348},[264,385,387,389],{"class":266,"line":386},9,[264,388,339],{"class":338},[264,390,391],{"class":342},"確認方法\n",[264,393,395],{"class":266,"line":394},10,[264,396,349],{"emptyLinePlaceholder":348},[264,398,400],{"class":266,"line":399},11,[264,401,402],{"class":354},"\u003C!-- レビュアーが動作確認できる手順 -->\n",[264,404,406],{"class":266,"line":405},12,[264,407,349],{"emptyLinePlaceholder":348},[264,409,411,413],{"class":266,"line":410},13,[264,412,339],{"class":338},[264,414,415],{"class":342},"スクリーンショット（該当する場合）\n",[264,417,419],{"class":266,"line":418},14,[264,420,349],{"emptyLinePlaceholder":348},[264,422,424],{"class":266,"line":423},15,[264,425,426],{"class":354},"\u003C!-- UI変更がある場合はスクリーンショットを添付 -->\n",[264,428,430],{"class":266,"line":429},16,[264,431,349],{"emptyLinePlaceholder":348},[264,433,435,437],{"class":266,"line":434},17,[264,436,339],{"class":338},[264,438,439],{"class":342},"チェックリスト\n",[264,441,443],{"class":266,"line":442},18,[264,444,349],{"emptyLinePlaceholder":348},[264,446,448,452],{"class":266,"line":447},19,[264,449,451],{"class":450},"sjHEW","-",[264,453,455],{"class":454},"sKuZN"," [ ] ローカルで動作確認済み\n",[264,457,459,461],{"class":266,"line":458},20,[264,460,451],{"class":450},[264,462,463],{"class":454}," [ ] テストを追加または更新した\n",[264,465,467,469],{"class":266,"line":466},21,[264,468,451],{"class":450},[264,470,471],{"class":454}," [ ] ドキュメントを更新した（必要な場合）\n",[264,473,475,477],{"class":266,"line":474},22,[264,476,451],{"class":450},[264,478,479],{"class":454}," [ ] Breaking Changeがある場合は明記した\n",[316,481,482,485],{},[201,483,484],{},"GitHub PR テンプレートについて",[201,486,487,488,491],{},"プロジェクトで統一したテンプレートを使用する場合、リポジトリに ",[261,489,490],{},".github\u002Fpull_request_template.md"," を作成すると、PR作成時に自動的にテンプレートが適用されます。\nテンプレートの内容はプロジェクトごとに調整してください。",[205,493,495],{"id":494},"prのサイズ","PRのサイズ",[201,497,498],{},"PRは小さく保つことを推奨します。",[500,501,502,505],"warning",{},[201,503,504],{},"大きすぎるPRは避ける",[201,506,507],{},"大規模なPRはレビューが困難になり、バグの見逃しや理解の誤りが発生しやすくなります。\n大きな変更は複数のPRに分割することを検討してください。",[196,509,510],{"id":510},"マージ戦略",[201,512,513],{},"プロジェクトのデフォルト設定として、以下を推奨します：",[210,515,516,523],{},[213,517,518,522],{},[519,520,521],"strong",{},"develop ブランチ",": Squash and Merge",[213,524,525,528],{},[519,526,527],{},"main ブランチ",": Merge Commit",[316,530,531,534],{},[201,532,533],{},"ブランチ保護設定での制限",[201,535,536,537,540],{},"ブランチ保護ルールで、許可するマージ方法を制限できます。\n詳細は",[538,539,160],"a",{"href":161},"を参照してください。",[205,542,543],{"id":543},"マージ後のブランチ削除",[201,545,546,547,549],{},"マージが完了したら、トピックブランチは削除します。",[229,548],{},"\nGitHubの設定で「マージ後に自動削除」を有効にすることを推奨します。",[551,552,553],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sYTcu, html code.shiki .sYTcu{--shiki-light:#005CC5;--shiki-light-font-weight:bold;--shiki-default:#89DDFF;--shiki-default-font-weight:inherit;--shiki-dark:#89DDFF;--shiki-dark-font-weight:inherit}html pre.shiki code .sVd3c, html code.shiki .sVd3c{--shiki-light:#005CC5;--shiki-light-font-weight:bold;--shiki-default:#FFCB6B;--shiki-default-font-weight:inherit;--shiki-dark:#FFCB6B;--shiki-dark-font-weight:inherit}html pre.shiki code .su8Ar, html code.shiki .su8Ar{--shiki-light:#6A737D;--shiki-light-font-style:inherit;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sjHEW, html code.shiki .sjHEW{--shiki-light:#E36209;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sKuZN, html code.shiki .sKuZN{--shiki-light:#24292E;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":259,"searchDepth":272,"depth":272,"links":555},[556,561],{"id":198,"depth":272,"text":199,"children":557},[558,559,560],{"id":207,"depth":158,"text":208},{"id":236,"depth":158,"text":237},{"id":494,"depth":158,"text":495},{"id":510,"depth":272,"text":510,"children":562},[563],{"id":543,"depth":158,"text":543},"PRの作成ルール、レビュー体制、マージ戦略に関するガイドライン",null,{},{"title":172,"description":564},"0pCKG30Ehzw-AZGHsTo0srb4corBOi7i3LsgmcfVu_Y",[570,572],{"title":168,"path":169,"stem":170,"description":571,"children":-1},"Conventional Commitsに準拠したコミットメッセージの書き方とタグ運用",{"title":176,"path":177,"stem":178,"description":573,"children":-1},"リポジトリの所有者、責任範囲、命名規則、可視性設定に関するガイドライン",1780099576697]