Plataforma de perguntas e respostas para transmissões ao vivo, combinada com agente de IA que transcreve áudio, gera vetores semânticos para análise de similaridade e gera respostas baseadas no contexto.
Construção de aplicações full-stack, conguração de back-end com Node.js e Fastify, uso de Docker e PostgreSQL com Drizzle ORM, desenvolvimento de front-end com React, Vite e Tailwind CSS, gerenciamento de rotas com React Router DOM, consumo de APIs com React Query, criação de hooks personalizados, gravação e upload de áudio no navegador e integração com Inteligência Artificial para transcrição, geração de embeddings e criação de respostas inteligentes com a API do Gemini.
Desenvolvido no evento NLW Agents - Avançado (7–13/07/2025) da Rocketseat
Requisitos:
- Docker
- Node.js (versão com suporte a
--experimental-strip-types
)
- Abrir um terminal e clonar o repositório:
git clone https://github.com/gp208/nlwAgents
cd nlwAgents/server
- Configurar o banco de dados:
docker-compose up -d
- Configurar variáveis de ambiente. Criar um arquivo
.env
em/server
:
PORT=3333
DATABASE_URL='postgresql://docker:docker@localhost:5432/agents'
GEMINI_API_KEY='(chave API)'
A chave da API Gemini é criada no Google AI Studio.
- Instalar dependências:
npm install
- Aplicar migrações do banco de dados
npx drizzle-kit migrate
- (Opcional) Inserir dados de exemplo no banco:
npm run db:seed
- Iniciar o servidor. Desenvolvimento:
npm run dev
Ou produção:
npm start
- Abrir outro terminal e acessar o diretório do front-end:
cd nlwAgents/web
- Instalar dependências:
npm install
- Executar o servidor de desenvolvimento:
npm run dev
- Acessar a aplicação em
http://localhost:5173