Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack ๐ŸŽ‰ Learn more
LibreChat

Pengaturan Kontributor

Pelajari cara berkontribusi menggunakan GitHub Desktop, ekstensi VS Code, dan Git rebase.

Persyaratan

  • Git (Penting)
  • Node.js v24.16.0 (Penting)
  • npm v11.16.0 (Penting)
  • MongoDB (Penting, untuk basis data)
  • Git LFS (Berguna untuk file yang lebih besar)
  • GitHub Desktop (Opsional)
  • VSCode (Editor Kode Sumber yang Direkomendasikan)

Instal ekstensi-ekstensi berikut di VS Code:

Menyiapkan Lingkungan

Node.js dan npm

Jika Anda menggunakan nvm, instal dan pilih versi Node.js yang direkomendasikan sebelum menginstal LibreChat:

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

Pastikan shell Anda menggunakan versi yang diharapkan:

node -v
npm -v
v24.16.0
11.16.0

GitHub

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

Ganti branch-name dan username dengan detail Anda

Buka di VS Code

  • Setelah melakukan kloning branch Anda:
    cd LibreChat
    code .

Persiapkan LibreChat

  • Buka terminal di VS Code dengan ctrl+shift+`` ```

    Sebagai alternatif, gunakan ctrl+j untuk membuka panel bawah dan pilih terminal.

  • npm run smart-reinstall

    Jika Anda baru saja mengubah versi Node.js atau npm, gunakan npm run reinstall sekali untuk instalasi yang bersih.

  • npm run build
  • Konfigurasi .env

    • Buat file .env. Jika Anda belum memilikinya, duplikat .env.example dan konfigurasikan file tersebut.

Peringatan

Nilai default di dalam .env.example biasanya sudah cukup, kecuali untuk MONGO_URI. Sediakan nilai Anda sendiri. Pastikan untuk menginstal MongoDB dan mengonfigurasi MONGO_URI dengan benar untuk terhubung ke instans MongoDB Anda. Gunakan MongoDB Community Server atau MongoDB Atlas Cloud.

Alur Kerja Pengembangan

Untuk pekerjaan yang efisien di LibreChat, gunakan perintah-perintah berikut:

  • Memulai Backend:

    • Gunakan npm run backend untuk pengoperasian normal.
    • Untuk pengembangan aktif, gunakan npm run backend:dev untuk memantau perubahan.
    • Akses di http://localhost:3080/.
  • Menjalankan Frontend dalam Mode Pengembangan:

    • Pastikan backend sedang berjalan.
    • Gunakan npm run frontend:dev untuk memantau perubahan frontend.
    • Lihat di http://localhost:3090/.

Tips Pro

  • Untuk pembaruan waktu nyata selama pengembangan frontend, jalankan npm run frontend:dev agar perubahan frontend diperbarui pada port 3090.
  • Atur DEBUG_CONSOLE=true di dalam .env untuk output server yang lebih rinci di konsol.

Pengujian Lokal

Sebelum pengiriman, uji pembaruan Anda secara lokal, lihat: Perform Tests Locally

Dengan menjalankan pengujian, pastikan kontribusi Anda tangguh dan siap untuk diintegrasikan.

Commit, Push, Pull Request (PR)

Lakukan Commit

Commits menandai titik pemeriksaan logis dalam pengembangan. Sertakan pesan yang jelas untuk menjelaskan perubahan.

Contoh:

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

Push Perubahan

Push perubahan ke repositori remote setelah menyelesaikan fitur atau memperbaiki masalah.

Contoh:

git push origin feature-branch-name

Membuat Pull Request (PR)

Pull Request menggabungkan perubahan dari branch fitur ke dalam branch utama.

  1. Tarik perubahan terbaru dari branch main dan selesaikan konflik.
  2. Push branch fitur yang telah diperbarui.
  3. Pastikan kode mengikuti pedoman proyek.

Contoh:

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

Akses repositori Anda di peramban dan klik "Contribute".

Catatan:

Berikan deskripsi PR yang mendetail untuk menjelaskan perubahan dan nilainya. Referensikan isu terkait.

Tips

Gunakan GitHub Desktop untuk melacak perubahan.

Peringatan

Jika git commit gagal karena kesalahan ESLint, pahami dan perbaiki masalah tersebut.

Mengembalikan Commit dengan Aman

Untuk membatalkan perubahan di feature branch, ikuti langkah-langkah ini dengan hati-hati:

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

    Ganti pick dengan drop untuk commit yang ingin dihapus. Simpan dan keluar dari editor.

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

Bagaimana panduan ini?