docs: make Chinese README the default
CI / Build Dev ECR (./docker/app.Dockerfile, ECR_APP) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/db.Dockerfile, ECR_MIGRATIONS) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/pii.Dockerfile, ECR_PII) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/realtime.Dockerfile, ECR_REALTIME) (push) Blocked by required conditions
CI / Build AMD64 (./docker/app.Dockerfile, ECR_APP, ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Build AMD64 (./docker/db.Dockerfile, ECR_MIGRATIONS, ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Build AMD64 (./docker/pii.Dockerfile, ECR_PII, ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Build AMD64 (./docker/realtime.Dockerfile, ECR_REALTIME, ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/app.Dockerfile, ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/db.Dockerfile, ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/pii.Dockerfile, ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/realtime.Dockerfile, ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Process Docs (push) Blocked by required conditions
CI / Create GitHub Release (push) Blocked by required conditions
CI / Migrate Dev DB (push) Has been skipped
CI / Deploy Trigger.dev (Dev) (push) Waiting to run
CI / Detect Version (push) Waiting to run
CI / Check Docs Changes (push) Waiting to run
CI / Test and Build (push) Failing after 1h30m6s
CI / Migrate DB (push) Has been skipped
CI / Build Dev ECR (./docker/app.Dockerfile, ECR_APP) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/db.Dockerfile, ECR_MIGRATIONS) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/pii.Dockerfile, ECR_PII) (push) Blocked by required conditions
CI / Build Dev ECR (./docker/realtime.Dockerfile, ECR_REALTIME) (push) Blocked by required conditions
CI / Build AMD64 (./docker/app.Dockerfile, ECR_APP, ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Build AMD64 (./docker/db.Dockerfile, ECR_MIGRATIONS, ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Build AMD64 (./docker/pii.Dockerfile, ECR_PII, ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Build AMD64 (./docker/realtime.Dockerfile, ECR_REALTIME, ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/app.Dockerfile, ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/db.Dockerfile, ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/pii.Dockerfile, ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Build ARM64 (GHCR Only) (./docker/realtime.Dockerfile, ghcr.io/simstudioai/realtime) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/migrations) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/pii) (push) Blocked by required conditions
CI / Create GHCR Manifests (ghcr.io/simstudioai/simstudio) (push) Blocked by required conditions
CI / Process Docs (push) Blocked by required conditions
CI / Create GitHub Release (push) Blocked by required conditions
CI / Migrate Dev DB (push) Has been skipped
CI / Deploy Trigger.dev (Dev) (push) Waiting to run
CI / Detect Version (push) Waiting to run
CI / Check Docs Changes (push) Waiting to run
CI / Test and Build (push) Failing after 1h30m6s
CI / Migrate DB (push) Has been skipped
This commit is contained in:
@@ -1,79 +1,85 @@
|
||||
<!-- WEHUB_ZH_README -->
|
||||
> [!NOTE]
|
||||
> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
|
||||
> [English](./README.en.md) · [原始项目](https://github.com/simstudioai/sim) · [上游 README](https://github.com/simstudioai/sim/blob/HEAD/README.md)
|
||||
> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。
|
||||
|
||||
<p align="center">
|
||||
<a href="https://sim.ai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Sim-sim.ai-3B3B3B?labelColor=1A1A1A" alt="Sim.ai"></a>
|
||||
<a href="https://docs.sim.ai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Docs-Read-E6E6E6?labelColor=C3C3C3&color=E6E6E6" alt="Documentation"></a>
|
||||
<a href="https://docs.sim.ai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Docs-Read-E6E6E6?labelColor=C3C3C3&color=E6E6E6" alt="文档"></a>
|
||||
<a href="https://discord.gg/Hr4UWYEcTT" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Discord-Join-E6E6E6?logo=discord&logoColor=1A1A1A&labelColor=C3C3C3&color=E6E6E6" alt="Discord"></a>
|
||||
<a href="https://x.com/simdotai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/X-%40simdotai-525252?logo=x&logoColor=white&labelColor=1A1A1A" alt="X"></a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://deepwiki.com/simstudioai/sim" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Ask-DeepWiki-E6E6E6?labelColor=C3C3C3&color=E6E6E6" alt="Ask DeepWiki"></a>
|
||||
<a href="https://cursor.com/link/prompt?text=Help%20me%20set%20up%20Sim%20locally.%20Follow%20these%20steps%3A%0A%0A1.%20First%2C%20verify%20Docker%20is%20installed%20and%20running%3A%0A%20%20%20docker%20--version%0A%20%20%20docker%20info%0A%0A2.%20Clone%20the%20repository%3A%0A%20%20%20git%20clone%20https%3A%2F%2Fgithub.com%2Fsimstudioai%2Fsim.git%0A%20%20%20cd%20sim%0A%0A3.%20Start%20the%20services%20with%20Docker%20Compose%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.prod.yml%20up%20-d%0A%0A4.%20Wait%20for%20all%20containers%20to%20be%20healthy%20(this%20may%20take%201-2%20minutes)%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.prod.yml%20ps%0A%0A5.%20Verify%20the%20app%20is%20accessible%20at%20http%3A%2F%2Flocalhost%3A3000%0A%0AIf%20there%20are%20any%20errors%2C%20help%20me%20troubleshoot%20them.%20Common%20issues%3A%0A-%20Port%203000%2C%203002%2C%20or%205432%20already%20in%20use%0A-%20Docker%20not%20running%0A-%20Insufficient%20memory%20(needs%2012GB%2B%20RAM)%0A%0AFor%20local%20AI%20models%20with%20Ollama%2C%20use%20this%20instead%20of%20step%203%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.ollama.yml%20--profile%20setup%20up%20-d"><img src="https://img.shields.io/badge/Set%20Up%20with-Cursor-E6E6E6?logo=cursor&logoColor=1A1A1A&labelColor=C3C3C3&color=E6E6E6" alt="Set Up with Cursor"></a>
|
||||
<a href="https://cursor.com/link/prompt?text=Help%20me%20set%20up%20Sim%20locally.%20Follow%20these%20steps%3A%0A%0A1.%20First%2C%20verify%20Docker%20is%20installed%20and%20running%3A%0A%20%20%20docker%20--version%0A%20%20%20docker%20info%0A%0A2.%20Clone%20the%20repository%3A%0A%20%20%20git%20clone%20https%3A%2F%2Fgithub.com%2Fsimstudioai%2Fsim.git%0A%20%20%20cd%20sim%0A%0A3.%20Start%20the%20services%20with%20Docker%20Compose%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.prod.yml%20up%20-d%0A%0A4.%20Wait%20for%20all%20containers%20to%20be%20healthy%20(this%20may%20take%201-2%20minutes)%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.prod.yml%20ps%0A%0A5.%20Verify%20the%20app%20is%20accessible%20at%20http%3A%2F%2Flocalhost%3A3000%0A%0AIf%20there%20are%20any%20errors%2C%20help%20me%20troubleshoot%20them.%20Common%20issues%3A%0A-%20Port%203000%2C%203002%2C%20or%205432%20already%20in%20use%0A-%20Docker%20not%20running%0A-%20Insufficient%20memory%20(needs%2012GB%2B%20RAM)%0A%0AFor%20local%20AI%20models%20with%20Ollama%2C%20use%20this%20instead%20of%20step%203%3A%0A%20%20%20docker%20compose%20-f%20docker-compose.ollama.yml%20--profile%20setup%20up%20-d"><img src="https://img.shields.io/badge/Set%20Up%20with-Cursor-E6E6E6?logo=cursor&logoColor=1A1A1A&labelColor=C3C3C3&color=E6E6E6" alt="使用 Cursor 配置"></a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://sim.ai" target="_blank" rel="noopener noreferrer">
|
||||
<img src="apps/sim/public/static/readme-banner.png" alt="Sim — Integrate, Context, Build, and Monitor AI agents" width="100%"/>
|
||||
<img src="apps/sim/public/static/readme-banner.png" alt="Sim — 集成、上下文、构建并监控 AI 智能体" width="100%"/>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">A workspace to build, deploy and manage AI agents and workflows.</p>
|
||||
<p align="center">用于构建、部署和管理 AI 智能体与工作流的工作空间。</p>
|
||||
|
||||
## Quickstart
|
||||
## 快速开始
|
||||
|
||||
### Cloud-hosted: [sim.ai](https://sim.ai)
|
||||
### 云端托管:[sim.ai](https://sim.ai)
|
||||
|
||||
<a href="https://sim.ai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Open-sim.ai-3B3B3B?labelColor=1A1A1A" alt="Open sim.ai"></a>
|
||||
<a href="https://sim.ai" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/Open-sim.ai-3B3B3B?labelColor=1A1A1A" alt="打开 sim.ai"></a>
|
||||
|
||||
### Self-hosted
|
||||
### 自托管
|
||||
|
||||
```bash
|
||||
npx simstudio
|
||||
```
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000)
|
||||
打开 [http://localhost:3000](http://localhost:3000)
|
||||
|
||||
Docker must be installed and running. Use `-p, --port <port>` to run Sim on a different port, or `--no-pull` to skip pulling the latest Docker images.
|
||||
必须安装并运行 Docker。使用 `-p, --port <port>` 在其他端口运行 Sim,或使用 `--no-pull` 跳过拉取最新 Docker 镜像。
|
||||
|
||||
<p align="center">
|
||||
<img src="apps/sim/public/static/readme-platform.png" alt="The Sim platform — chat on the left, the visual workflow builder on the right" width="100%"/>
|
||||
<img src="apps/sim/public/static/readme-platform.png" alt="Sim 平台 — 左侧为聊天,右侧为可视化工作流构建器" width="100%"/>
|
||||
</p>
|
||||
|
||||
## Capabilities
|
||||
## 功能特性
|
||||
|
||||
- Connect 1,000+ integrations and every major LLM
|
||||
- Add Slack, Notion, HubSpot, Salesforce, databases, and more
|
||||
- Build agents visually, conversationally, or with code
|
||||
- Ingest files, knowledge bases, and structured table data
|
||||
- Monitor runs, logs, schedules, and workflow activity
|
||||
- 连接 1,000+ 集成与所有主流 LLM
|
||||
- 接入 Slack、Notion、HubSpot、Salesforce、数据库等
|
||||
- 通过可视化界面、对话或代码构建智能体
|
||||
- 摄取文件、知识库和结构化表格数据
|
||||
- 监控运行、日志、调度与工作流活动
|
||||
|
||||
## One workspace, every surface
|
||||
## 一个工作空间,覆盖所有场景
|
||||
|
||||
<p align="center">Chat and workflows are just the start — tables, files, knowledge, and scheduled tasks all live in the same workspace.</p>
|
||||
<p align="center">聊天和工作流只是开始 — 表格、文件、知识库和定时任务都在同一工作空间中。</p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td width="50%" valign="top">
|
||||
<img src="apps/sim/public/static/readme-tables.png" alt="Tables in Sim — structured data your agents can query" width="100%"/>
|
||||
<p align="center"><b>Tables</b> — a database, built in</p>
|
||||
<img src="apps/sim/public/static/readme-tables.png" alt="Sim 中的表格 — 智能体可查询的结构化数据" width="100%"/>
|
||||
<p align="center"><b>Tables</b> — 内置数据库</p>
|
||||
</td>
|
||||
<td width="50%" valign="top">
|
||||
<img src="apps/sim/public/static/readme-files.png" alt="Files in Sim — documents for your team and every agent" width="100%"/>
|
||||
<p align="center"><b>Files</b> — one store for your team and every agent</p>
|
||||
<img src="apps/sim/public/static/readme-files.png" alt="Sim 中的文件 — 供团队与各智能体使用的文档" width="100%"/>
|
||||
<p align="center"><b>Files</b> — 团队与各智能体共享的统一存储</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="50%" valign="top">
|
||||
<img src="apps/sim/public/static/readme-knowledge.png" alt="Knowledge bases in Sim — synced docs your agents can search" width="100%"/>
|
||||
<p align="center"><b>Knowledge</b> — your agents' memory</p>
|
||||
<img src="apps/sim/public/static/readme-knowledge.png" alt="Sim 中的知识库 — 智能体可搜索的同步文档" width="100%"/>
|
||||
<p align="center"><b>Knowledge</b> — 智能体的记忆</p>
|
||||
</td>
|
||||
<td width="50%" valign="top">
|
||||
<img src="apps/sim/public/static/readme-scheduled-tasks.png" alt="Scheduled tasks in Sim — recurring agent runs on a calendar" width="100%"/>
|
||||
<p align="center"><b>Scheduled tasks</b> — runs on your schedule</p>
|
||||
<img src="apps/sim/public/static/readme-scheduled-tasks.png" alt="Sim 中的定时任务 — 按日历周期性运行的智能体" width="100%"/>
|
||||
<p align="center"><b>Scheduled tasks</b> — 按你的计划运行</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
## Self-hosting
|
||||
## 自托管
|
||||
|
||||
### Docker Compose
|
||||
|
||||
@@ -82,15 +88,15 @@ git clone https://github.com/simstudioai/sim.git && cd sim
|
||||
docker compose -f docker-compose.prod.yml up -d
|
||||
```
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000)
|
||||
打开 [http://localhost:3000](http://localhost:3000)
|
||||
|
||||
Sim also supports local models via [Ollama](https://ollama.ai) and [vLLM](https://docs.vllm.ai/). See the [Docker self-hosting docs](https://docs.sim.ai/self-hosting/docker) for setup details.
|
||||
Sim 还支持通过 [Ollama](https://ollama.ai) 和 [vLLM](https://docs.vllm.ai/). 使用本地模型。详见 [Docker 自托管文档](https://docs.sim.ai/self-hosting/docker) 了解配置详情。
|
||||
|
||||
### Manual Setup
|
||||
### 手动配置
|
||||
|
||||
**Requirements:** [Bun](https://bun.sh/), [Node.js](https://nodejs.org/) v20+, PostgreSQL 12+ with [pgvector](https://github.com/pgvector/pgvector)
|
||||
**环境要求:** [Bun](https://bun.sh/), [Node.js](https://nodejs.org/) v20+、PostgreSQL 12+ 及 [pgvector](https://github.com/pgvector/pgvector)
|
||||
|
||||
1. Clone and install:
|
||||
1. 克隆并安装:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/simstudioai/sim.git
|
||||
@@ -99,15 +105,15 @@ bun install
|
||||
bun run prepare # Set up pre-commit hooks
|
||||
```
|
||||
|
||||
2. Set up PostgreSQL with pgvector:
|
||||
2. 配置带 pgvector 的 PostgreSQL:
|
||||
|
||||
```bash
|
||||
docker run --name simstudio-db -e POSTGRES_PASSWORD=your_password -e POSTGRES_DB=simstudio -p 5432:5432 -d pgvector/pgvector:pg17
|
||||
```
|
||||
|
||||
Or install manually via the [pgvector guide](https://github.com/pgvector/pgvector#installation).
|
||||
或通过 [pgvector 指南](https://github.com/pgvector/pgvector#installation). 手动安装
|
||||
|
||||
3. Configure environment:
|
||||
3. 配置环境:
|
||||
|
||||
```bash
|
||||
cp apps/sim/.env.example apps/sim/.env
|
||||
@@ -120,62 +126,63 @@ cp packages/db/.env.example packages/db/.env
|
||||
# Edit both .env files to set DATABASE_URL="postgresql://postgres:your_password@localhost:5432/simstudio"
|
||||
```
|
||||
|
||||
4. Run migrations:
|
||||
4. 运行迁移:
|
||||
|
||||
```bash
|
||||
cd packages/db && bun run db:migrate
|
||||
```
|
||||
|
||||
5. Start development servers:
|
||||
5. 启动开发服务器:
|
||||
|
||||
```bash
|
||||
bun run dev:full # Starts Next.js app and realtime socket server
|
||||
```
|
||||
|
||||
Or run separately: `bun run dev` (Next.js) and `cd apps/sim && bun run dev:sockets` (realtime).
|
||||
或分别运行:`bun run dev`(Next.js)和 `cd apps/sim && bun run dev:sockets`(realtime)。
|
||||
|
||||
## Chat API Keys
|
||||
## Chat API 密钥
|
||||
|
||||
Chat is a Sim-managed service. To use Chat on a self-hosted instance:
|
||||
Chat 是 Sim 托管的服务。在自托管实例上使用 Chat:
|
||||
|
||||
- Go to https://sim.ai → Settings → Chat keys and generate a Chat API key
|
||||
- Set `COPILOT_API_KEY` environment variable in your self-hosted apps/sim/.env file to that value
|
||||
- 前往 https://sim.ai → Settings → Chat keys,生成 Chat API 密钥
|
||||
- 在自托管环境的 apps/sim/.env 文件中将 `COPILOT_API_KEY` 环境变量设置为该值
|
||||
|
||||
## Environment Variables
|
||||
## 环境变量
|
||||
|
||||
See the [environment variables reference](https://docs.sim.ai/self-hosting/environment-variables) for the full list, or [`apps/sim/.env.example`](apps/sim/.env.example) for defaults.
|
||||
完整列表见[环境变量参考](https://docs.sim.ai/self-hosting/environment-variables),默认值见 [`apps/sim/.env.example`](apps/sim/.env.example)。
|
||||
|
||||
## Tech Stack
|
||||
## 技术栈
|
||||
|
||||
<details>
|
||||
<summary>Next.js · Bun · PostgreSQL · Drizzle · Better Auth · Tailwind — and the rest of the stack</summary>
|
||||
<summary>Next.js · Bun · PostgreSQL · Drizzle · Better Auth · Tailwind — 以及技术栈的其他部分</summary>
|
||||
|
||||
- **Framework**: [Next.js](https://nextjs.org/) (App Router)
|
||||
- **Runtime**: [Bun](https://bun.sh/)
|
||||
- **Database**: PostgreSQL with [Drizzle ORM](https://orm.drizzle.team)
|
||||
- **Authentication**: [Better Auth](https://better-auth.com)
|
||||
- **Schema Validation**: [Zod](https://zod.dev)
|
||||
- **Framework(框架)**: [Next.js](https://nextjs.org/) (App Router)
|
||||
- **Runtime(运行时)**: [Bun](https://bun.sh/)
|
||||
- **Database(数据库)**: PostgreSQL with [Drizzle ORM](https://orm.drizzle.team)
|
||||
- **Authentication(认证)**: [Better Auth](https://better-auth.com)
|
||||
- **Schema Validation(模式验证)**: [Zod](https://zod.dev)
|
||||
- **UI**: [Shadcn](https://ui.shadcn.com/), [Tailwind CSS](https://tailwindcss.com)
|
||||
- **Streaming Markdown**: [Streamdown](https://github.com/vercel/streamdown)
|
||||
- **State Management**: [Zustand](https://zustand-demo.pmnd.rs/), [TanStack Query](https://tanstack.com/query)
|
||||
- **Flow Editor**: [ReactFlow](https://reactflow.dev/)
|
||||
- **Docs**: [Fumadocs](https://fumadocs.vercel.app/)
|
||||
- **Monorepo**: [Turborepo](https://turborepo.org/)
|
||||
- **Realtime**: [Socket.io](https://socket.io/)
|
||||
- **Background Jobs**: [Trigger.dev](https://trigger.dev/)
|
||||
- **Remote Code Execution**: [E2B](https://www.e2b.dev/)
|
||||
- **Isolated Code Execution**: [isolated-vm](https://github.com/laverdet/isolated-vm)
|
||||
- **Streaming Markdown(流式 Markdown)**: [Streamdown](https://github.com/vercel/streamdown)
|
||||
- **State Management(状态管理)**: [Zustand](https://zustand-demo.pmnd.rs/), [TanStack Query](https://tanstack.com/query)
|
||||
- **Flow Editor(流程编辑器)**: [ReactFlow](https://reactflow.dev/)
|
||||
- **Docs(文档)**: [Fumadocs](https://fumadocs.vercel.app/)
|
||||
- **Monorepo(单体仓库)**: [Turborepo](https://turborepo.org/)
|
||||
- **Realtime(实时通信)**: [Socket.io](https://socket.io/)
|
||||
- **Background Jobs(后台任务)**: [Trigger.dev](https://trigger.dev/)
|
||||
- **Remote Code Execution(远程代码执行)**: [E2B](https://www.e2b.dev/)
|
||||
- **Isolated Code Execution(隔离代码执行)**: [isolated-vm](https://github.com/laverdet/isolated-vm)
|
||||
</details>
|
||||
|
||||
</details>
|
||||
|
||||
## Contributing
|
||||
## 贡献
|
||||
|
||||
We welcome contributions! Please see our [Contributing Guide](.github/CONTRIBUTING.md) for details.
|
||||
我们欢迎贡献!详情请参阅我们的[贡献指南](.github/CONTRIBUTING.md)。
|
||||
|
||||
## License
|
||||
## 许可证
|
||||
|
||||
This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
|
||||
本项目采用 Apache License 2.0 许可证 — 详情请参阅 [LICENSE](LICENSE) 文件。
|
||||
|
||||
<p align="center">
|
||||
<img src="apps/sim/public/static/readme-built-by-sim-team.png" alt="Built by the Sim team in San Francisco" width="100%"/>
|
||||
<img src="apps/sim/public/static/readme-built-by-sim-team.png" alt="由旧金山的 Sim 团队打造" width="100%"/>
|
||||
</p>
|
||||
|
||||
Reference in New Issue
Block a user