Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Thiết lập cho người đóng góp

Tìm hiểu cách đóng góp bằng GitHub Desktop, các tiện ích mở rộng VS Code và Git rebase.

Yêu cầu

  • Git (Thiết yếu)
  • Node.js v24.16.0 (Thiết yếu)
  • npm v11.16.0 (Thiết yếu)
  • MongoDB (Thiết yếu, dành cho cơ sở dữ liệu)
  • Git LFS (Hữu ích cho các tệp tin lớn hơn)
  • GitHub Desktop (Tùy chọn)
  • VSCode (Trình chỉnh sửa mã nguồn được khuyến nghị)

Cài đặt các tiện ích mở rộng này trong VS Code:

Chuẩn bị Môi trường

Node.js và npm

Nếu bạn sử dụng nvm, hãy cài đặt và chọn phiên bản Node.js được khuyến nghị trước khi cài đặt LibreChat:

nvm install 24.16.0
nvm use 24.16.0
npm install -g [email protected]

Xác minh shell của bạn đang sử dụng các phiên bản mong đợi:

node -v
npm -v
v24.16.0
11.16.0

GitHub

  • Fork repository LibreChat: https://github.com/danny-avila/LibreChat/fork

  • Tạo một nhánh trên bản fork của bạn, đặt tên phù hợp và liên kết nó với kho lưu trữ gốc.

  • Tải nhánh mới của bạn về máy tính cục bộ

git clone -b branch-name https://github.com/username/LibreChat.git

Thay thế branch-nameusername bằng thông tin của bạn

Mở trong VS Code

  • Sau khi sao chép (clone) nhánh của bạn:
    cd LibreChat
    code .

Chuẩn bị LibreChat

  • Mở terminal trong VS Code bằng ctrl+shift+`` ```

    Hoặc, sử dụng ctrl+j để mở ngăn dưới cùng và chọn terminal.

  • npm run smart-reinstall

    Nếu bạn vừa thay đổi phiên bản Node.js hoặc npm, hãy sử dụng npm run reinstall một lần để cài đặt sạch.

  • npm run build
  • Cấu hình .env

    • Tạo tệp .env. Nếu bạn chưa có, hãy sao chép .env.example và cấu hình nó.

Cảnh báo

Các giá trị mặc định trong .env.example thường là ổn, ngoại trừ MONGO_URI. Hãy cung cấp giá trị của riêng bạn. Đảm bảo cài đặt MongoDB và cấu hình MONGO_URI chính xác để kết nối với instance MongoDB của bạn. Sử dụng MongoDB Community Server hoặc MongoDB Atlas Cloud.

Quy trình phát triển

Để làm việc hiệu quả trên LibreChat, hãy sử dụng các lệnh sau:

  • Khởi chạy Backend:

    • Sử dụng npm run backend để vận hành bình thường.
    • Để phát triển tích cực, hãy sử dụng npm run backend:dev để theo dõi các thay đổi.
    • Truy cập tại http://localhost:3080/.
  • Chạy Frontend ở Chế độ Phát triển:

    • Đảm bảo backend đang chạy.
    • Sử dụng npm run frontend:dev để theo dõi các thay đổi ở giao diện người dùng (frontend).
    • Xem tại http://localhost:3090/.

Mẹo chuyên gia

  • Để cập nhật theo thời gian thực trong quá trình phát triển frontend, hãy chạy npm run frontend:dev để các thay đổi ở frontend tự động làm mới trên cổng 3090.
  • Đặt DEBUG_CONSOLE=true trong .env để nhận đầu ra máy chủ chi tiết trong console.

Kiểm thử cục bộ

Trước khi gửi, hãy kiểm tra các cập nhật của bạn tại máy cục bộ, xem: Perform Tests Locally

Bằng cách chạy các bài kiểm thử, hãy đảm bảo các đóng góp của bạn luôn ổn định và sẵn sàng để tích hợp.

Commit, Push, Pull Request (PR)

Thực hiện Commit

Commits đánh dấu các điểm kiểm tra logic trong quá trình phát triển. Hãy bao gồm các thông báo rõ ràng giải thích những thay đổi.

Ví dụ:

git add .
git commit -m "Add login functionality"

Đẩy thay đổi

Push các thay đổi lên kho lưu trữ từ xa sau khi hoàn thành một tính năng hoặc sửa một lỗi.

Ví dụ:

git push origin feature-branch-name

Tạo một Pull Request (PR)

Pull Request hợp nhất các thay đổi từ một nhánh tính năng vào nhánh chính.

  1. Kéo các thay đổi mới nhất từ nhánh main và giải quyết xung đột.
  2. Đẩy nhánh tính năng đã cập nhật.
  3. Đảm bảo mã nguồn tuân thủ các hướng dẫn của dự án.

Ví dụ:

git checkout main
git pull origin main
git checkout feature-branch-name
git rebase main
# Resolve conflicts if any
git push origin feature-branch-name
# Open PR on GitHub

Truy cập kho lưu trữ của bạn trong trình duyệt và nhấp vào "Contribute".

Lưu ý:

Cung cấp mô tả PR chi tiết giải thích các thay đổi và giá trị của chúng. Tham chiếu các issue liên quan.

Mẹo

Sử dụng GitHub Desktop để theo dõi các thay đổi.

Cảnh báo

Nếu git commit thất bại do các lỗi ESLint, hãy tìm hiểu và khắc phục vấn đề đó.

Hoàn tác Commit một cách an toàn

Để hoàn tác các thay đổi trong một feature branch, hãy thực hiện các bước sau một cách thận trọng:

  • git pull origin feature-branch-name
  • git log
  • git rebase -i HEAD~N

    Thay thế pick bằng drop cho các commit cần xóa. Lưu và thoát trình chỉnh sửa.

  • git push --force-with-lease origin feature-branch-name

Hướng dẫn này thế nào?