Liam项目开发环境搭建与贡献指南

Liam项目开发环境搭建与贡献指南

liam Automatically generates beautiful and easy-to-read ER diagrams from your database. liam 项目地址: https://gitcode.com/gh_mirrors/li/liam

项目概述

Liam是一个现代化的开发项目,采用模块化架构设计,包含多个子包协同工作。项目使用pnpm作为包管理工具,采用monorepo结构管理多个功能模块。本文将详细介绍如何搭建开发环境以及如何为项目做出贡献。

开发环境搭建

前置准备

在开始之前,请确保你的系统满足以下要求:

  • Node.js (建议使用LTS版本)
  • pnpm (通过corepack启用)
  • Git版本控制系统

环境配置步骤

  1. 获取项目代码

    使用Git克隆项目到本地开发目录。

  2. 安装依赖

    执行以下命令启用corepack并安装项目依赖:

    corepack enable
    corepack prepare
    pnpm install
    
  3. 配置环境变量

    项目使用环境变量管理敏感信息和配置。根据你的身份选择配置方式:

    • 核心维护人员: 使用Vercel工具链链接项目并拉取环境变量:

      pnpm vercel:link
      pnpm vercel:env-pull
      

      然后创建.env.local文件并设置OPENAI_API_KEYTRIGGER_SECRET_KEY等关键变量。

    • 普通贡献者: 复制环境模板文件并填写必要变量:

      cp .env.template .env
      

      编辑.env文件,根据开发需要配置Supabase、GitHub App、Trigger.dev等服务凭证。

  4. 启动开发服务器

    运行以下命令启动开发环境:

    pnpm dev
    
  5. 访问各子包

    项目包含多个子包,各自运行在不同的端口:

    | 包名 | 访问地址 | |-------------------|----------------------| | @liam-hq/app | http://localhost:3001 | | @liam-hq/cli | http://localhost:5173 | | @liam-hq/docs | http://localhost:3002 | | @liam-hq/storybook| http://localhost:6006 |

问题报告与功能请求

如何有效报告问题

当发现代码错误、文档问题或有新功能建议时,请遵循以下原则创建问题报告:

  1. 可复现性:提供明确的复现步骤
  2. 具体性:包含环境详情、版本信息等
  3. 唯一性:避免重复已有问题
  4. 单一性:一个问题只报告一个bug

问题报告内容建议

  • 问题描述:清晰说明遇到的问题
  • 预期行为:描述你认为应该发生什么
  • 实际行为:描述实际发生了什么
  • 复现步骤:逐步说明如何重现问题
  • 环境信息:操作系统、Node版本、浏览器等

提交代码变更

准备工作

  1. 检查现有拉取请求,避免重复工作
  2. 创建特性分支:git switch -c feat/你的特性名

变更管理

项目使用changeset管理包版本变更:

  1. 对于frontend/packages目录下的包修改,使用:
    pnpm changeset
    
  2. 注意@liam-hq/docs包的修改不需要changeset

提交规范

项目采用Gitmoji规范提交信息:

  • ✨ 用于新功能
  • 🐛 用于修复bug
  • 📝 用于文档更新

示例:

✨ 新增表格过滤功能
🐛 修复登录页面样式问题
📝 更新安装文档

代码格式化

提交前运行格式化命令:

pnpm run fmt

提交与推送

  1. 提交变更:git commit -m 'feat: 添加新特性'
  2. 推送分支:git push origin feat/你的特性名
  3. 创建拉取请求

最佳实践建议

  1. 代码质量:确保新代码符合项目现有风格
  2. 测试覆盖:为新功能添加相应测试
  3. 文档更新:代码变更涉及功能修改时同步更新文档
  4. 小步提交:保持每次提交的原子性,便于审查
  5. 描述清晰:在拉取请求中详细说明变更内容和原因

通过遵循这些指南,你可以高效地为Liam项目做出贡献,同时确保项目代码质量和一致性得到维护。

liam Automatically generates beautiful and easy-to-read ER diagrams from your database. liam 项目地址: https://gitcode.com/gh_mirrors/li/liam

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余钧冰Daniel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值