# 貢獻指南 ## 數據文件結構 ### 1. 貢獻者信息 (`data/[lang]/contributors.json`) ```json { "members": [ { "name": "貢獻者名稱", "role": "身份描述", "avatar": "頭像URL", "links": [ { "name": "鏈接名稱", "url": "鏈接地址", "color": "文本顏色類名", "icon": "圖標名稱" } ], "isCore": true/false // 是否為核心貢獻者 } ] } ``` ### 2. 項目動態文章 動態文章按年份組織,存放在對應的 JSON 文件中。 `data/[lang]/updates.json` 中引用了對應年份的動態文章索引: ```json { "years": [ "index/2025.json", "index/2024.json", "index/2023.json", "index/2022.json", "index/2021.json", "index/2020.json" ] } ``` `data/[lang]/updates/index/[YYYY].json` 中包含了對應年份的動態列表: ```json { "updates": [ { "id": "journal-2020q3", // 文章id,會構成形如 `https://mirror.starset.fans/updates/journal-2020q3` 的 URL "date": "2020-10-07", // 發佈日期 "title": "2020年第三季度項目動態", // 文章標題 "summary": "在本季度中,我們從一個bilibili賬號“發展”成為一個有目標的項目,這期間我們經歷了網站遷移、財務賬戶獨立、多个應用更新和社區管理調整,並處理了一次安全攻擊。", // 文章摘要 "tags": ["journal"] // 文章標籤 } ] } ``` 如果有具體的文章內容,需要以 Markdown 格式存放於 `/data/[lang]/updates/[YYYY]/[id].md` 中。Markdown 文件只包含正文,不包含標題和目錄。 ### 3. 特色翻譯 (`data/featured-translations.json`) ```json { "translations": [ { "id": 編號, "en": "英文原文", "zh_CN": "簡體中文翻譯", "zh_TW": "繁體中文翻譯" } ] } ``` ### 4. 網站翻譯(`data/[lang]/index.json`) 如果你的 Pull Request 涉及對網站組件的修改,請確保將使用的文字分離到上述翻譯文件中,並在翻譯文件的對應位置添加新的翻譯。 ## 如何貢獻 ### 更新貢獻者信息 1. 找到 `data/[lang]/contributors.json` 文件 2. 按照上述 schema 格式添加或修改貢獻者信息 3. 確保提供的所有 URL(頭像、鏈接等)是可訪問的 4. 提交 Pull Request ### 添加/修改更新文章 1. 在 `data/[lang]/updates/[year]/` 目錄下創建或找到對應月份的 JSON 文件 2. 按照上述 schema 格式添加或修改文章內容 3. 文章內容支持 Markdown 格式,可以包含: - 標題(使用 #) - 鏈接 - 圖片 - 列表 - 引用 - 代碼塊 4. 提交 Pull Request ### 添加/修改特色翻譯 1. 編輯 `data/featured-translations.json` 文件 2. 按照上述 schema 格式添加或修改翻譯內容 3. 確保提供所有語言版本的翻譯 4. 提交 Pull Request ## 提交指南 1. Fork 本倉庫 2. 創建你的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交你的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 開啟一個 Pull Request ## 代碼風格 - JSON 文件使用 2 空格縮進,不包含註釋 - 文件名使用小寫字母,多个單詞用連字符(-)連接 - 日期格式:YYYY-MM-DD ## 注意事項 1. 所有文本內容都需要遵循多語言格式,確保在所有語言目錄下都有對應的翻譯(除非提交的資源是針對特定語言) 2. 圖片和其他媒體資源請上傳到指定的圖床,具體請聯繫項目維護者