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

Configuração para Contribuidores

Aprenda a contribuir usando o GitHub Desktop, extensões do VS Code e Git rebase.

Requisitos

  • Git (Essencial)
  • Node.js v24.16.0 (Essencial)
  • npm v11.16.0 (Essencial)
  • MongoDB (Essencial, para o banco de dados)
  • Git LFS (Útil para arquivos maiores)
  • GitHub Desktop (Opcional)
  • VSCode (Editor de código-fonte recomendado)

Instale estas extensões no VS Code:

Prepare o Ambiente

Node.js e npm

Se você usa o nvm, instale e selecione a versão recomendada do Node.js antes de instalar o LibreChat:

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

Verifique se o seu shell está usando as versões esperadas:

node -v
npm -v
v24.16.0
11.16.0

GitHub

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

Substitua branch-name e username pelos seus detalhes

Abrir no VS Code

  • Após clonar sua branch:
    cd LibreChat
    code .

Prepare o LibreChat

  • Abra o terminal no VS Code com ctrl+shift+`` ```

    Alternativamente, use ctrl+j para abrir o painel inferior e selecione o terminal.

  • npm run smart-reinstall

    Se você acabou de alterar as versões do Node.js ou npm, use npm run reinstall uma vez para uma instalação limpa.

  • npm run build
  • Configuração do .env

    • Crie o arquivo .env. Se você não tiver um, duplique o .env.example e configure-o.

Aviso

Os valores padrão em .env.example geralmente são adequados, exceto para MONGO_URI. Forneça o seu próprio. Certifique-se de instalar o MongoDB e configurar MONGO_URI corretamente para conectar à sua instância do MongoDB. Use o MongoDB Community Server ou o MongoDB Atlas Cloud.

Fluxo de Trabalho de Desenvolvimento

Para um trabalho eficiente no LibreChat, use estes comandos:

  • Iniciando o Backend:

    • Use npm run backend para operação normal.
    • Para desenvolvimento ativo, use npm run backend:dev para monitorar alterações.
    • Acesse em http://localhost:3080/.
  • Executando o Frontend em Modo de Desenvolvimento:

    • Certifique-se de que o backend esteja em execução.
    • Use npm run frontend:dev para monitorar alterações no frontend.
    • Acesse em http://localhost:3090/.

Dicas Profissionais

  • Para atualizações em tempo real durante o desenvolvimento do frontend, execute npm run frontend:dev para que as alterações no frontend sejam atualizadas na porta 3090.
  • Defina DEBUG_CONSOLE=true no .env para obter uma saída detalhada do servidor no console.

Testes Locais

Antes de enviar, teste suas atualizações localmente, veja: Perform Tests Locally

Ao executar testes, garanta que suas contribuições sejam robustas e estejam prontas para integração.

Commit, Push, Pull Request (PR)

Fazer um Commit

Commits marcam pontos de verificação lógicos no desenvolvimento. Inclua mensagens claras explicando as alterações.

Exemplo:

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

Enviar Alterações

Envie (Push) as alterações para o repositório remoto após concluir uma funcionalidade ou corrigir um problema.

Exemplo:

git push origin feature-branch-name

Criar um Pull Request (PR)

Pull Request mescla alterações de um branch de funcionalidade para o branch principal.

  1. Puxe as alterações mais recentes da branch main e resolva os conflitos.
  2. Envie o branch de recurso atualizado.
  3. Certifique-se de que o código siga as diretrizes do projeto.

Exemplo:

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

Acesse seu repositório em um navegador e clique em "Contribute".

Nota:

Forneça uma descrição detalhada do PR explicando as alterações e seu valor. Referencie issues relacionadas.

Dica

Use o GitHub Desktop para rastrear alterações.

Aviso

Se git commit falhar devido a erros do ESLint, entenda e corrija o problema.

Reverter Commits com Segurança

Para desfazer alterações em uma feature branch, siga estes passos com cautela:

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

    Substitua pick por drop para os commits a serem removidos. Salve e saia do editor.

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

Como está este guia?