Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,10 @@ Project harness follows `jammyfu/CoderSkills` → `skills/continuous-project-loo
- Dirty worktree: if a run starts with uncommitted changes, finish or park them first (`verify` -> PR); do not stack new work on top. `tools/local_daily.sh` refuses to run on a dirty tree or off `main`.
- Verification must not depend on the shell PATH: `tools/verify.py` and `tools/local_daily.sh` use explicit interpreters, no `shell=True` (guarded by `tests/test_harness.py`).
- Do not edit the plan files to claim a result that `tools/verify.py` has not confirmed.

## Localized introduction website

- `docs/index.html`, `docs/{zh-Hans,zh-Hant,ja,ko}/index.html`, `docs/sitemap.xml` and `docs/llms.txt` are generated by `python3 tools/render_site.py`; do not edit them by hand.
- Edit full site translations in `tools/site_locales.json` and machine navigation in root `llms.txt`, then regenerate. Taiwan Traditional Chinese must use natural Taiwan vocabulary, not just character conversion.
- Keep all five locales' canonical/hreflang navigation reciprocal, FAQ structured data identical to visible answers, and rankings linked to the corresponding existing README.
- Run `python3 tools/render_site.py --check` (also in `tools/verify.py`). This site is an introduction, not a second ranking data source: do not copy stale metrics or fabricate hotness.
9 changes: 9 additions & 0 deletions CURRENT_PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,12 @@ Complete the latest GitHub API ranking in all five languages, including the unre
- Observe the existing hourly Mac job after the authorized publication, without duplicate triggers
- Improve explicit English-language detection for non-CJK sources separately
- Owner decision on developer-tools newcomer quality signals remains outside this round

## Five-language introduction site (2026-11-12)

- [x] Keep ranking tables, data, formulas and historical snapshots unchanged.
- [x] Add full Taiwan Traditional Chinese, Japanese and Korean introduction/FAQ pages.
- [x] Generate reciprocal language navigation, canonical/hreflang, visible-matching JSON-LD and sitemap for all five pages.
- [x] Reuse the existing project title image and keep the facts table readable on narrow screens.
- [x] Check generated site consistency in the repository verifier.
- [ ] Publish an independent draft PR for review; do not merge automatically.
31 changes: 31 additions & 0 deletions docs/SITE_LOCALIZATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Maintaining the five-language introduction

The ranking READMEs were already available in five languages. This website now offers the same five entry languages without duplicating ranking snapshots.

| Entry | Language | Ranking destination |
| --- | --- | --- |
| `/` | English | `README.md` |
| `/zh-Hans/` | 简体中文 | `README.zh-Hans.md` |
| `/zh-Hant/` | 繁體中文(台灣用語) | `README.zh-Hant.md` |
| `/ja/` | 日本語 | `README.ja.md` |
| `/ko/` | 한국어 | `README.ko.md` |

Edit `tools/site_locales.json`, then run:

```bash
python3 tools/render_site.py
python3 tools/render_site.py --check
python3 tools/verify.py
```

The generator shares layout, language links, canonical URLs, sitemap and FAQ schema. Every FAQ schema answer comes from the same localized text shown on screen. Root `llms.txt` is copied to the published site; edit the root file only.

## Presentation and evidence

- Reuse `.github/social-preview.png` as project identity, not a fake screenshot of the current rankings.
- Keep the primary action pointed at the current language's live README; numeric data and ranking logic remain in the existing pipeline.
- The facts table remains a table; flexible navigation, wrapping text and a fluid title image support narrow screens without removing content.
- No client-side executable scripts or telemetry are added. JSON-LD is inert structured data.
- Discovery improvements are clearer localized titles, descriptions, links and exact answer text, not keyword stuffing or a ranking guarantee. `llms.txt` cannot guarantee AI citations.
- Supporting methodology documents linked from these pages may still be English or Simplified Chinese; this change does not claim that every repository document has five translations.
- Translations are AI-reviewed and remain open to corrections from native speakers.
212 changes: 26 additions & 186 deletions docs/index.html

Large diffs are not rendered by default.

32 changes: 32 additions & 0 deletions docs/ja/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<!doctype html>
<!-- Generated by tools/render_site.py; edit tools/site_locales.json instead. -->
<html lang="ja"><head>
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
<title>GitHub Risers:Star 増加速度で見つける注目の GitHub リポジトリ</title><meta name="description" content="累計 Star 数ではなく、1 日あたりの Star 増加数で GitHub の注目リポジトリを探す。AI、開発ツール、セキュリティ、Web、インフラ、デザイン、データを GitHub API から毎日更新。">
<link rel="canonical" href="https://jammyfu.github.io/github-risers/ja/">
<link rel="alternate" hreflang="en" href="https://jammyfu.github.io/github-risers/">
<link rel="alternate" hreflang="zh-Hans" href="https://jammyfu.github.io/github-risers/zh-Hans/">
<link rel="alternate" hreflang="zh-Hant" href="https://jammyfu.github.io/github-risers/zh-Hant/">
<link rel="alternate" hreflang="ja" href="https://jammyfu.github.io/github-risers/ja/">
<link rel="alternate" hreflang="ko" href="https://jammyfu.github.io/github-risers/ko/">
<link rel="alternate" hreflang="x-default" href="https://jammyfu.github.io/github-risers/">
<meta property="og:type" content="website"><meta property="og:title" content="GitHub Risers:Star 増加速度で見つける注目の GitHub リポジトリ"><meta property="og:description" content="累計 Star 数ではなく、1 日あたりの Star 増加数で GitHub の注目リポジトリを探す。AI、開発ツール、セキュリティ、Web、インフラ、デザイン、データを GitHub API から毎日更新。"><meta property="og:url" content="https://jammyfu.github.io/github-risers/ja/">
<meta property="og:image" content="https://raw.githubusercontent.com/jammyfu/github-risers/main/.github/social-preview.png"><meta name="twitter:card" content="summary_large_image">
<style>*{box-sizing:border-box}body{margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:#1b1f2a;background:#f6f7fb;overflow-wrap:anywhere}
header{background:linear-gradient(135deg,#0f172a,#312e81 55%,#7c3aed);color:#fff;padding:40px 20px}.w{max-width:860px;margin:0 auto}h1{margin:0 0 12px;font-size:clamp(1.7rem,5vw,2.2rem);line-height:1.2}header p{color:#e5e7ff}a.btn{display:inline-block;padding:10px 18px;border-radius:8px;background:#fff;color:#312e81;text-decoration:none;font-weight:600}.hero{display:block;max-width:100%;height:auto;margin:24px auto 0;border-radius:12px}
main{padding:12px 20px 40px}h2{margin-top:32px;font-size:1.35rem}table{border-collapse:collapse;width:100%;background:#fff}td,th{border:1px solid #e3e5ee;padding:8px 12px;text-align:left;vertical-align:top}th{width:25%;background:#eef0f8}details{background:#fff;border:1px solid #e3e5ee;border-radius:8px;padding:10px 14px;margin:8px 0}summary{cursor:pointer;font-weight:600}a{color:#4338ca}ul{padding-left:1.2em}footer{padding:24px 20px 40px;color:#555;font-size:.9rem}.sw{display:flex;flex-wrap:wrap;gap:8px 16px;margin:18px 0}.sw a{color:#e0e7ff}a:focus-visible,summary:focus-visible{outline:3px solid #fb923c;outline-offset:4px}@media(max-width:480px){header,main,footer{padding-left:16px;padding-right:16px}td,th{padding:8px}}
</style>
<script type="application/ld+json">{"@context": "https://schema.org", "@type": "Dataset", "name": "GitHub Risers:Star 増加速度で見つける注目の GitHub リポジトリ", "description": "累計 Star 数ではなく、1 日あたりの Star 増加数で GitHub の注目リポジトリを探す。AI、開発ツール、セキュリティ、Web、インフラ、デザイン、データを GitHub API から毎日更新。", "url": "https://jammyfu.github.io/github-risers/ja/", "sameAs": "https://github.com/jammyfu/github-risers", "license": "https://opensource.org/license/mit", "isAccessibleForFree": true, "inLanguage": ["en", "zh-Hans", "zh-Hant", "ja", "ko"], "creator": {"@type": "Person", "name": "jammyfu", "url": "https://github.com/jammyfu"}, "variableMeasured": ["stars", "stars gained per day"], "distribution": [{"@type": "DataDownload", "encodingFormat": "application/json", "contentUrl": "https://raw.githubusercontent.com/jammyfu/github-risers/main/data/stats.json"}]}</script>
<script type="application/ld+json">{"@context": "https://schema.org", "@type": "SoftwareSourceCode", "name": "github-risers", "codeRepository": "https://github.com/jammyfu/github-risers", "programmingLanguage": "Python", "license": "https://opensource.org/license/mit"}</script>
<script type="application/ld+json">{"@context": "https://schema.org", "@type": "FAQPage", "inLanguage": "ja", "mainEntity": [{"@type": "Question", "name": "GitHub Risers とは?", "acceptedAnswer": {"@type": "Answer", "text": "累計 Star 数ではなく増加速度で順位付けした GitHub リポジトリのランキングです。AI がメインで、開発ツール、セキュリティ、Web、インフラ、デザイン、データにも個別ランキングがあります。"}}, {"@type": "Question", "name": "増加速度はどう計算しますか?", "acceptedAnswer": {"@type": "Answer", "text": "1 日あたりの増加数 = 集計期間内の獲得 Star 数 ÷ 使用日数です。GitHub API の stargazers/history から、実行日より前の完了した UTC 日ごとの Star 数を合計します。作成からの日数が集計期間より短い場合は、その日数で割り、新規として表示します。"}}, {"@type": "Question", "name": "更新頻度は?", "acceptedAnswer": {"@type": "Answer", "text": "毎日更新します。実行ごとに別のフォルダーへ履歴を保存します。"}}, {"@type": "Question", "name": "GitHub Trending と同じですか?", "acceptedAnswer": {"@type": "Answer", "text": "いいえ。GitHub Trending は GitHub 自身のページです。GitHub Risers は独立したオープンソースプロジェクトで、ルールと全更新履歴を公開しており、GitHub との提携関係はありません。"}}, {"@type": "Question", "name": "注目の新規リポジトリはどう選びますか?", "acceptedAnswer": {"@type": "Answer", "text": "過去 7 日以内に作成され、100 Star 以上あり、fork ではなく、アーカイブされていないリポジトリを、Star 数 ÷ 作成からの日数で順位付けします。"}}, {"@type": "Question", "name": "不正な Star を検出しますか?", "acceptedAnswer": {"@type": "Answer", "text": "いいえ。GitHub API が返す数値を表示します。公開したヒューリスティックでクラック版や海賊版の寄せ集めと思われる新規リポジトリに印を付け、通常のリポジトリの後ろに並べるだけです。"}}, {"@type": "Question", "name": "生成 AI を使いますか?", "acceptedAnswer": {"@type": "Answer", "text": "ランキングは通常のスクリプトで計算します。説明文の翻訳には任意の手順で AI モデルを使えますが、数値は AI で生成しません。"}}, {"@type": "Question", "name": "引用するには?", "acceptedAnswer": {"@type": "Answer", "text": "リポジトリの CITATION.cff を使い(GitHub の Cite this repository ボタンから確認できます)、利用したスナップショットの日付を記載してください。"}}]}</script>
</head><body><header><div class="w">
<h1>GitHub Risers</h1><p>累計 Star 数ではなく、1 日あたりの Star 増加数でリポジトリを順位付けします。AI をメインに、開発ツール、セキュリティ、Web、インフラ、デザイン、データの個別ランキングを用意。数値は GitHub API から取得し、毎日更新します。</p><p>スクリプトで作成するランキングです。GitHub の公式製品でも、人が選ぶおすすめ一覧でもありません。Star 販売や宣伝代行サービスではありません。</p>
<a class="btn" href="https://github.com/jammyfu/github-risers/blob/main/README.ja.md">最新ランキングを見る</a>
<nav class="sw" aria-label="Language"><a href="https://jammyfu.github.io/github-risers/" hreflang="en">English</a><a href="https://jammyfu.github.io/github-risers/zh-Hans/" hreflang="zh-Hans">简体中文</a><a href="https://jammyfu.github.io/github-risers/zh-Hant/" hreflang="zh-Hant">繁體中文</a><a href="https://jammyfu.github.io/github-risers/ja/" hreflang="ja" aria-current="page">日本語</a><a href="https://jammyfu.github.io/github-risers/ko/" hreflang="ko">한국어</a></nav>
<img class="hero" src="https://raw.githubusercontent.com/jammyfu/github-risers/main/.github/social-preview.png" width="640" alt="GitHub Risers">
</div></header><main><div class="w">
<h2>基本情報</h2><table><tr><th scope="row">内容</th><td>7・30・365 日間の 1 日あたり Star 増加数で順位付け。直近 7 日の新規リポジトリランキングも掲載</td></tr><tr><th scope="row">カテゴリ</th><td>AI(メイン)、開発ツール、セキュリティ、Web/フロントエンド、インフラ、デザイン/クリエイティブ、データ</td></tr><tr><th scope="row">更新</th><td>毎日</td></tr><tr><th scope="row">データソース</th><td>GitHub REST API のみ。欠損データは欠損として表示し、推定しません</td></tr><tr><th scope="row">テレメトリ</th><td>なし</td></tr><tr><th scope="row">ライセンス</th><td>MIT</td></tr></table>
<h2>5 言語のランキング</h2><ul><li><a href="https://github.com/jammyfu/github-risers#readme" hreflang="en">English</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/README.zh-Hans.md" hreflang="zh-Hans">简体中文</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/README.zh-Hant.md" hreflang="zh-Hant">繁體中文</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/README.ja.md" hreflang="ja">日本語</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/README.ko.md" hreflang="ko">한국어</a></li></ul>
<h2>よくある質問</h2><details><summary>GitHub Risers とは?</summary><p>累計 Star 数ではなく増加速度で順位付けした GitHub リポジトリのランキングです。AI がメインで、開発ツール、セキュリティ、Web、インフラ、デザイン、データにも個別ランキングがあります。</p></details><details><summary>増加速度はどう計算しますか?</summary><p>1 日あたりの増加数 = 集計期間内の獲得 Star 数 ÷ 使用日数です。GitHub API の stargazers/history から、実行日より前の完了した UTC 日ごとの Star 数を合計します。作成からの日数が集計期間より短い場合は、その日数で割り、新規として表示します。</p></details><details><summary>更新頻度は?</summary><p>毎日更新します。実行ごとに別のフォルダーへ履歴を保存します。</p></details><details><summary>GitHub Trending と同じですか?</summary><p>いいえ。GitHub Trending は GitHub 自身のページです。GitHub Risers は独立したオープンソースプロジェクトで、ルールと全更新履歴を公開しており、GitHub との提携関係はありません。</p></details><details><summary>注目の新規リポジトリはどう選びますか?</summary><p>過去 7 日以内に作成され、100 Star 以上あり、fork ではなく、アーカイブされていないリポジトリを、Star 数 ÷ 作成からの日数で順位付けします。</p></details><details><summary>不正な Star を検出しますか?</summary><p>いいえ。GitHub API が返す数値を表示します。公開したヒューリスティックでクラック版や海賊版の寄せ集めと思われる新規リポジトリに印を付け、通常のリポジトリの後ろに並べるだけです。</p></details><details><summary>生成 AI を使いますか?</summary><p>ランキングは通常のスクリプトで計算します。説明文の翻訳には任意の手順で AI モデルを使えますが、数値は AI で生成しません。</p></details><details><summary>引用するには?</summary><p>リポジトリの CITATION.cff を使い(GitHub の Cite this repository ボタンから確認できます)、利用したスナップショットの日付を記載してください。</p></details>
<h2>ドキュメント</h2><ul><li><a href="https://github.com/jammyfu/github-risers/blob/main/docs/FACTS.md">プロジェクト概要</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/docs/FAQ.md">よくある質問</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/docs/CATEGORIES.md">カテゴリ規則</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/docs/NEW_ARRIVALS.md">新規リポジトリの条件</a></li><li><a href="https://github.com/jammyfu/github-risers/blob/main/docs/DAILY_UPDATE.md">毎日の更新手順</a></li><li><a href="https://raw.githubusercontent.com/jammyfu/github-risers/main/data/stats.json">最新データ(JSON)</a></li><li><a href="https://jammyfu.github.io/github-risers/llms.txt">llms.txt</a></li><li><a href="https://github.com/jammyfu/github-risers">ソースコード</a></li></ul>
</div></main><footer><div class="w">MIT ライセンス。作者:jammyfu。解析・追跡なし。GitHub との提携関係はありません。</div></footer></body></html>
Loading
Loading