Initial TrueGrowth source import
This commit is contained in:
44
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
44
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
---
|
||||
name: Bug报告
|
||||
about: 报告一个bug帮助我们改进
|
||||
title: '[BUG] '
|
||||
labels: 'bug'
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## Bug描述
|
||||
简洁清晰地描述这个bug是什么。
|
||||
|
||||
## 复现步骤
|
||||
重现此问题的步骤:
|
||||
1. 进入 '...'
|
||||
2. 点击 '....'
|
||||
3. 滚动到 '....'
|
||||
4. 看到错误
|
||||
|
||||
## 期望行为
|
||||
清晰简洁地描述你期望发生什么。
|
||||
|
||||
## 实际行为
|
||||
清晰简洁地描述实际发生了什么。
|
||||
|
||||
## 截图
|
||||
如果适用,请添加截图以帮助解释你的问题。
|
||||
|
||||
## 环境信息
|
||||
- 操作系统: [如 macOS, Windows, Linux]
|
||||
- 浏览器: [如 Chrome 120, Safari 17]
|
||||
- Aitu版本: [如 0.2.4]
|
||||
- 设备类型: [如 桌面端, 移动端]
|
||||
|
||||
## 控制台错误
|
||||
如果浏览器控制台有错误信息,请粘贴在这里:
|
||||
```
|
||||
粘贴错误信息
|
||||
```
|
||||
|
||||
## 附加上下文
|
||||
在此处添加有关该问题的任何其他上下文。
|
||||
|
||||
## 可能的解决方案
|
||||
(可选)如果你有关于如何修复此问题的想法,请在此分享。
|
||||
11
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
11
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
blank_issues_enabled: true
|
||||
contact_links:
|
||||
- name: 💬 讨论和问题
|
||||
url: https://github.com/aitu-dk/aitu/discussions
|
||||
about: 对于一般性问题、想法讨论或寻求帮助,请使用Discussions
|
||||
- name: 📖 文档
|
||||
url: https://github.com/aitu-dk/aitu/tree/main/docs
|
||||
about: 查看项目文档和开发指南
|
||||
- name: 🌐 官网
|
||||
url: https://opentu.ai
|
||||
about: 访问Aitu官方网站
|
||||
48
.github/ISSUE_TEMPLATE/documentation.md
vendored
Normal file
48
.github/ISSUE_TEMPLATE/documentation.md
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
name: 文档改进
|
||||
about: 帮助改进项目文档
|
||||
title: '[DOCS] '
|
||||
labels: 'documentation'
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## 文档问题
|
||||
清晰简洁地描述文档中存在的问题。
|
||||
|
||||
## 文档位置
|
||||
请指出问题所在的文档位置:
|
||||
- 文件路径:
|
||||
- 章节:
|
||||
- URL (如果适用):
|
||||
|
||||
## 问题类型
|
||||
- [ ] 内容缺失 - 缺少重要信息
|
||||
- [ ] 内容错误 - 信息不准确或过时
|
||||
- [ ] 内容不清晰 - 难以理解或有歧义
|
||||
- [ ] 格式问题 - 排版、链接、代码示例等问题
|
||||
- [ ] 翻译问题 - 中英文翻译不准确
|
||||
- [ ] 示例代码问题 - 代码示例错误或无法运行
|
||||
- [ ] 其他:
|
||||
|
||||
## 详细描述
|
||||
提供更多关于问题的详细信息。
|
||||
|
||||
## 建议的改进
|
||||
如果你有改进建议,请在此描述:
|
||||
|
||||
```markdown
|
||||
你建议的文档内容
|
||||
```
|
||||
|
||||
## 受影响的用户
|
||||
这个文档问题会影响到:
|
||||
- [ ] 新用户
|
||||
- [ ] 经验用户
|
||||
- [ ] 开发者
|
||||
- [ ] 所有用户
|
||||
|
||||
## 附加上下文
|
||||
在此处添加任何其他上下文或截图。
|
||||
|
||||
## 愿意贡献
|
||||
- [ ] 我愿意提交PR来改进这部分文档
|
||||
51
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
51
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
---
|
||||
name: 功能请求
|
||||
about: 为项目提出新功能建议
|
||||
title: '[FEATURE] '
|
||||
labels: 'enhancement'
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## 功能描述
|
||||
清晰简洁地描述你希望添加的功能。
|
||||
|
||||
## 问题背景
|
||||
这个功能请求是否与某个问题相关?请描述。
|
||||
例如:当我尝试...时总是很沮丧
|
||||
|
||||
## 期望的解决方案
|
||||
清晰简洁地描述你希望实现的功能。
|
||||
|
||||
## 替代方案
|
||||
清晰简洁地描述你考虑过的任何替代解决方案或功能。
|
||||
|
||||
## 使用场景
|
||||
描述这个功能的具体使用场景:
|
||||
1. 作为用户,我想...
|
||||
2. 以便于我可以...
|
||||
|
||||
## 受益用户
|
||||
这个功能会帮助到哪些用户?
|
||||
- [ ] 初级用户
|
||||
- [ ] 高级用户
|
||||
- [ ] 开发者
|
||||
- [ ] 内容创作者
|
||||
- [ ] 其他:
|
||||
|
||||
## 优先级
|
||||
你认为这个功能的优先级如何?
|
||||
- [ ] 低 - 锦上添花
|
||||
- [ ] 中 - 会显著改善体验
|
||||
- [ ] 高 - 对工作流程至关重要
|
||||
|
||||
## UI/UX建议
|
||||
(可选)如果你对用户界面或交互有具体想法,请在此描述或提供草图。
|
||||
|
||||
## 参考示例
|
||||
(可选)如果其他应用有类似功能,请提供参考。
|
||||
|
||||
## 附加上下文
|
||||
在此处添加有关该功能请求的任何其他上下文或截图。
|
||||
|
||||
## 愿意贡献
|
||||
- [ ] 我愿意提交PR来实现这个功能
|
||||
133
.github/workflows/ci.yml
vendored
Normal file
133
.github/workflows/ci.yml
vendored
Normal file
@@ -0,0 +1,133 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
|
||||
permissions:
|
||||
actions: read
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
# PR 时运行:lint、test、build 和冒烟测试
|
||||
main:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
# Cache node_modules
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 20
|
||||
cache: 'pnpm'
|
||||
|
||||
- run: corepack enable pnpm
|
||||
- run: pnpm install
|
||||
- uses: nrwl/nx-set-shas@v4
|
||||
|
||||
|
||||
# 安装 Playwright 浏览器和依赖
|
||||
- name: Install Playwright
|
||||
run: npx playwright install --with-deps chromium
|
||||
|
||||
# lint、test、build
|
||||
- run: npx nx affected -t test build --base=origin/develop --verbose
|
||||
- run: npx nx affected -t lint --exclude=drawnix --base=origin/develop --verbose
|
||||
|
||||
# PR 时运行冒烟测试(快速,约2分钟)
|
||||
- name: Run Smoke Tests
|
||||
run: pnpm run e2e:smoke
|
||||
|
||||
- name: Upload Smoke Test Results
|
||||
if: failure()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: smoke-test-results
|
||||
path: apps/web-e2e/test-results/
|
||||
|
||||
# PR 时运行视觉回归测试
|
||||
- name: Run Visual Regression Tests
|
||||
run: pnpm run e2e:visual
|
||||
|
||||
- name: Upload Visual Test Report
|
||||
if: failure()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: visual-diff-report
|
||||
path: apps/web-e2e/playwright-report/
|
||||
|
||||
- name: Check Bundle Size
|
||||
if: always()
|
||||
run: pnpm run size
|
||||
|
||||
- name: Upload Bundle Stats
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: bundle-stats
|
||||
path: dist/apps/web/stats.html
|
||||
|
||||
# 发布前运行:完整 E2E 测试 + 生成用户手册
|
||||
release-e2e:
|
||||
runs-on: ubuntu-latest
|
||||
# 仅在 main 分支 push 或手动触发时运行
|
||||
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 20
|
||||
cache: 'pnpm'
|
||||
|
||||
- run: corepack enable pnpm
|
||||
- run: pnpm install
|
||||
|
||||
# 安装所有浏览器用于完整测试
|
||||
- name: Install Playwright Browsers
|
||||
run: npx playwright install --with-deps
|
||||
|
||||
# 运行完整功能测试
|
||||
- name: Run Full E2E Tests
|
||||
run: pnpm run e2e:features
|
||||
|
||||
# 运行视觉回归测试
|
||||
- name: Run Visual Tests
|
||||
run: pnpm run e2e:visual
|
||||
|
||||
# 运行手册生成测试
|
||||
- name: Run Manual Generation Tests
|
||||
run: pnpm run e2e:manual
|
||||
|
||||
# 生成用户手册
|
||||
- name: Generate User Manual
|
||||
run: pnpm run manual:build
|
||||
|
||||
# 上传测试报告
|
||||
- name: Upload E2E Test Report
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: e2e-test-report
|
||||
path: apps/web-e2e/playwright-report/
|
||||
|
||||
# 上传测试结果(包含截图)
|
||||
- name: Upload Test Results
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: e2e-test-results
|
||||
path: apps/web-e2e/test-results/
|
||||
|
||||
# 上传用户手册
|
||||
- name: Upload User Manual
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: user-manual
|
||||
path: docs/user-manual/
|
||||
46
.github/workflows/publish.yml
vendored
Normal file
46
.github/workflows/publish.yml
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
name: publish
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "*"
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Login to Docker Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Set TAG
|
||||
run: echo TAG=${GITHUB_REF#refs/tags/} >> $GITHUB_ENV
|
||||
|
||||
- name: Publish ${{ matrix.svc }}
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
file: Dockerfile
|
||||
outputs: "type=registry,push=true"
|
||||
platforms: linux/amd64, linux/arm64
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/drawnix:latest
|
||||
ghcr.io/${{ github.repository_owner }}/drawnix:${{ env.TAG }}
|
||||
pubuzhixing/drawnix:${{ env.TAG }}
|
||||
pubuzhixing/drawnix:latest
|
||||
Reference in New Issue
Block a user