Skip to content

Latest commit

 

History

History
87 lines (59 loc) · 2.15 KB

contributing_cn.md

File metadata and controls

87 lines (59 loc) · 2.15 KB

English

让我们一起改进 Bruno!

很高兴看到您考虑改进 Bruno。以下是获取 Bruno 并在您的电脑上运行它的规则和指南。

使用的技术

Bruno 基于 NextJs 和 React 构建。我们使用 Electron 来封装桌面版本。

我们使用的库包括:

  • CSS - Tailwind
  • 代码编辑器 - Codemirror
  • 状态管理 - Redux
  • 图标 - Tabler Icons
  • 表单 - formik
  • 模式验证 - Yup
  • 请求客户端 - axios
  • 文件系统监视器 - chokidar

依赖项

您需要 Node v20.x 或最新的 LTS 版本 和 npm 8.x。我们在这个项目中也使用 npm 工作区(npm workspaces)。

开发

Bruno 是作为一个 client lourd(重客户端) 应用程序开发的。您需要在一个终端中启动 nextjs 来加载应用程序,然后在另一个终端中启动 Electron 应用程序。

依赖项

  • NodeJS v18

本地开发

# 使用 node 版本 18
nvm use

# 安装依赖项
npm i --legacy-peer-deps

# 构建 graphql 文档
npm run build:graphql-docs

# 构建 bruno 查询
npm run build:bruno-query

# 启动 next(终端 1)
npm run dev:web

# 启动重客户端(终端 2)
npm run dev:electron

故障排除

在运行 npm install 时,您可能会遇到 Unsupported platform 错误。为了解决这个问题,请删除 node_modules 目录和 package-lock.json 文件,然后再次运行 npm install。这应该会安装运行应用程序所需的所有包。

# 删除子目录中的 node_modules 目录
find ./ -type d -name "node_modules" -print0 | while read -d $'\0' dir; do
  rm -rf "$dir"
done

# 删除子目录中的 package-lock.json 文件
find . -type f -name "package-lock.json" -delete

测试

# bruno-schema
npm test --workspace=packages/bruno-schema

# bruno-lang
npm test --workspace=packages/bruno-lang

提交 Pull Request

  • 请保持 PR 精简并专注于单一目标
  • 请遵循分支命名格式:
    • feature/[feature name]:该分支应包含特定功能
      • 例如:feature/dark-mode
    • bugfix/[bug name]:该分支应仅包含特定 bug 的修复
      • 例如:bugfix/bug-1