O Clutch Chat é um aplicativo de chatbot full-stack desenvolvido com React no frontend, Node.js com Express no backend e MongoDB como banco de dados. Ele integra a API do PandaScore para fornecer informações históricas sobre a organização Fúria, além de utilizar a API da OpenAI para oferecer capacidades de processamento de linguagem natural (NLP) com RAG (Retrieval-Augmented Generation), treinado com dados históricos da Fúria. Isso permite interações conversacionais mais ricas e contextuais com os usuários. O chatbot também inclui funcionalidades de autenticação (login e registro), configuração de avatar e uma interface de chat interativa.
- Frontend Interativo: Interface de usuário construída com React, com rotas para registro, login, configuração de avatar e chat.
- Processamento de Linguagem Natural: Integração com a API da OpenAI para respostas contextuais e conversas naturais.
- Autenticação: Páginas de login e registro para gerenciar usuários.
- Configuração de Avatar: Funcionalidade para personalizar o avatar do usuário.
- RAG (Retrieval-Augmented Generation): Suporte para processamento de documentos (PDFs) e geração de respostas baseadas em contexto.
- Frontend:
- React.js
- Backend:
- Node.js
- Express.js
Antes de começar, certifique-se de ter o seguinte instalado:
- Node.js
- npm
- MongoDB
- Uma chave de API da OpenAI (obtida em OpenAI Dashboard)
- Uma chave de API do PandaScore (obtida em Panda Score)
Todos precisam estar instalados e tenha certeza que o serviço do MongoDB esteja rodando.
Siga os passos abaixo para configurar e executar o projeto localmente:
git clone https://github.com/marcub/chat-bot-node-react.git
cd chat-bot-node-react- Navegue até o diretório do servidor:
cd server - Instale as dependências:
npm install
- Crie um arquivo
.envna pastaservere adicione as variáveis abaixo:PORT=5000 MONGO_URL=sua-conexão-aqui ACCESS_TOKEN_PANDA=sua-chave-aqui OPENAI_API_KEY=sua-chave-aqui - Inicie o servidor:
O servidor estará rodando em
npm start
http://localhost:5000.
- Em outro terminal, navegue até o diretório do frontend:
cd public - Instale as dependências:
npm install
- Crie um arquivo
.envna pastapublice adicione as variáveis abaixo:Por padrão utilizar:REACT_APP_BACK_URL=seu-endereço-do-servidor-aquihttp://localhost:5000. - Inicie o aplicativo React:
O frontend estará rodando em
npm start
http://localhost:3000e redirecionará automaticamente para a página de login.
- Abra seu navegador e vá para
http://localhost:3000. - Registre-se ou faça login para começar a interagir com o chatbot.
/public: Contém o frontend React./src/pages: Páginas principais (Chat.jsx,Login.jsx,Register.jsx,SetAvatar.jsx)./src/utils: Utilitários (ex.:ApiROUTES.jspara chamadas de API).
/server: Contém o backend Node.js./controller: Controladores (ex.:chatController.js,pandaController.js)./routes: Rotas da API (ex.:ragRoutes.js)./service: Serviços (ex.:ragService.jspara integração com OpenAI)./rag: Arquivos relacionados a RAG (ex.:docs/para PDFs,model/para modelos).
Este projeto está licenciado sob a Licença MIT.


