diff --git a/.all-contributorsrc b/.all-contributorsrc
index 3dcb6762..cc877244 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -1,55 +1,62 @@
{
- "projectName": "ecs-framework",
- "projectOwner": "esengine",
- "repoType": "github",
- "repoHost": "https://github.com",
- "files": [
- "README.md"
- ],
- "imageSize": 100,
- "commit": true,
- "commitConvention": "angular",
- "contributors": [],
- "contributorsPerLine": 7,
- "contributorsSortAlphabetically": false,
- "badgeTemplate": "[](#contributors)",
- "contributorTemplate": "\">\" width=\"<%= options.imageSize %>px;\" alt=\"<%= contributor.name %>\"/>
<%= contributor.name %>",
- "types": {
- "code": {
- "symbol": "💻",
- "description": "Code",
- "link": "[<%= symbol %>](<%= url %> \"Code\")"
+ "projectName": "ecs-framework",
+ "projectOwner": "esengine",
+ "repoType": "github",
+ "repoHost": "https://github.com",
+ "files": ["README.md"],
+ "imageSize": 100,
+ "commit": true,
+ "commitConvention": "angular",
+ "contributors": [
+ {
+ "login": "yhh",
+ "name": "Frank Huang",
+ "avatar_url": "https://avatars.githubusercontent.com/u/145575?v=4",
+ "profile": "https://github.com/yhh",
+ "contributions": ["code"]
+ }
+ ],
+ "contributorsPerLine": 7,
+ "contributorsSortAlphabetically": false,
+ "badgeTemplate": "[](#contributors)",
+ "contributorTemplate": "\">\" width=\"<%= options.imageSize %>px;\" alt=\"<%= contributor.name %>\"/>
<%= contributor.name %>",
+ "types": {
+ "code": {
+ "symbol": "💻",
+ "description": "Code",
+ "link": "[<%= symbol %>](<%= url %> \"Code\")"
+ },
+ "doc": {
+ "symbol": "📖",
+ "description": "Documentation",
+ "link": "[<%= symbol %>](<%= url %> \"Documentation\")"
+ },
+ "test": {
+ "symbol": "⚠️",
+ "description": "Tests",
+ "link": "[<%= symbol %>](<%= url %> \"Tests\")"
+ },
+ "bug": {
+ "symbol": "🐛",
+ "description": "Bug reports",
+ "link": "[<%= symbol %>](<%= url %> \"Bug reports\")"
+ },
+ "example": {
+ "symbol": "💡",
+ "description": "Examples",
+ "link": "[<%= symbol %>](<%= url %> \"Examples\")"
+ },
+ "design": {
+ "symbol": "🎨",
+ "description": "Design",
+ "link": "[<%= symbol %>](<%= url %> \"Design\")"
+ },
+ "ideas": {
+ "symbol": "🤔",
+ "description": "Ideas & Planning",
+ "link": "[<%= symbol %>](<%= url %> \"Ideas & Planning\")"
+ }
},
- "doc": {
- "symbol": "📖",
- "description": "Documentation",
- "link": "[<%= symbol %>](<%= url %> \"Documentation\")"
- },
- "test": {
- "symbol": "⚠️",
- "description": "Tests",
- "link": "[<%= symbol %>](<%= url %> \"Tests\")"
- },
- "bug": {
- "symbol": "🐛",
- "description": "Bug reports",
- "link": "[<%= symbol %>](<%= url %> \"Bug reports\")"
- },
- "example": {
- "symbol": "💡",
- "description": "Examples",
- "link": "[<%= symbol %>](<%= url %> \"Examples\")"
- },
- "design": {
- "symbol": "🎨",
- "description": "Design",
- "link": "[<%= symbol %>](<%= url %> \"Design\")"
- },
- "ideas": {
- "symbol": "🤔",
- "description": "Ideas & Planning",
- "link": "[<%= symbol %>](<%= url %> \"Ideas & Planning\")"
- }
- },
- "skipCi": true
+ "skipCi": true
}
+
diff --git a/.coderabbit.yaml b/.coderabbit.yaml
new file mode 100644
index 00000000..69a06381
--- /dev/null
+++ b/.coderabbit.yaml
@@ -0,0 +1,36 @@
+# CodeRabbit 配置文件
+# https://docs.coderabbit.ai/configuration
+
+language: "zh-CN" # 使用中文评论
+reviews:
+ # 审查级别
+ profile: "chill" # "chill" 或 "strict" 或 "assertive"
+
+ # 自动审查设置
+ auto_review:
+ enabled: true
+ drafts: false # 草稿 PR 不自动审查
+ base_branches:
+ - master
+ - main
+
+ # 审查内容
+ request_changes_workflow: false # 不阻止 PR 合并
+ high_level_summary: true # 生成高层次摘要
+ poem: false # 不生成诗歌(可以改为 true 增加趣味)
+ review_status: true # 显示审查状态
+
+ # 忽略的文件
+ path_filters:
+ - "!**/*.md" # 不审查 markdown
+ - "!**/package-lock.json" # 不审查 lock 文件
+ - "!**/dist/**" # 不审查构建输出
+ - "!**/*.min.js" # 不审查压缩文件
+
+# 聊天设置
+chat:
+ auto_reply: true # 自动回复问题
+
+# 提交建议
+suggestions:
+ enabled: true # 启用代码建议
diff --git a/.github/workflows/pr-agent.yml b/.github/workflows/pr-agent.yml
new file mode 100644
index 00000000..cee401d3
--- /dev/null
+++ b/.github/workflows/pr-agent.yml
@@ -0,0 +1,28 @@
+name: PR Agent
+
+on:
+ pull_request:
+ types: [opened, reopened, synchronize]
+ issue_comment:
+ types: [created, edited]
+
+permissions:
+ contents: read
+ pull-requests: write
+ issues: write
+
+jobs:
+ pr_agent:
+ runs-on: ubuntu-latest
+ name: Run PR Agent
+ if: ${{ github.event.sender.type != 'Bot' }}
+ steps:
+ - name: PR Agent Action
+ id: pragent
+ uses: Codium-ai/pr-agent@main
+ env:
+ OPENAI_KEY: ${{ secrets.OPENAI_KEY }}
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ github_action_config.auto_review: "true"
+ github_action_config.auto_describe: "true"
+ github_action_config.auto_improve: "false"
diff --git a/README.md b/README.md
index d7c8852f..a28daaaf 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,43 @@
[](https://github.com/esengine/ecs-framework/stargazers)
[](https://deepwiki.com/esengine/ecs-framework)
-一个高性能的 TypeScript ECS (Entity-Component-System) 框架,专为现代游戏开发而设计。
+
一个高性能的 TypeScript ECS (Entity-Component-System) 框架,专为现代游戏开发而设计。
+ +A high-performance TypeScript ECS (Entity-Component-System) framework designed for modern game development.
+ +esengine 🚧 💻 🎨 |
+ LING YE 💻 |
+ MirageTank 💻 |
+