https://github.com/megave/nlw-agents
Projeto da NLW Agents, da Trilha Avançada | Project from NLW Agents, from the Advanced Trail
https://github.com/megave/nlw-agents
Last synced: 11 months ago
JSON representation
Projeto da NLW Agents, da Trilha Avançada | Project from NLW Agents, from the Advanced Trail
- Host: GitHub
- URL: https://github.com/megave/nlw-agents
- Owner: megaVE
- Created: 2025-07-08T17:41:33.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-07-08T22:22:20.000Z (12 months ago)
- Last Synced: 2025-07-08T23:31:01.927Z (12 months ago)
- Language: TypeScript
- Size: 177 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NLW Agents
EN: Full-stack application development, back-end setup using Node.js and Fastify, utilization of Docker and PostgreSQL with Drizzle ORM, front-end development with React, Vite, and Tailwind CSS, route management using React Router DOM, API consumption with React Query, creation of custom hooks, audio recording and uploading in the browser, and integration with Artificial Intelligence for transcription, embedding generation, and intelligent response creation using the Gemini API.
PT: Construção de aplicações full-stack, configuraçã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.



## Description (Descrição)
The 'Let me ask' project is a Web Application developed for creating Custom Question Rooms, in which users may ask questions with the Text Form and receive answers from Artificial Intelligence, generated by the content captured from the Voice Recording Room.
O projeto 'Let me ask' é uma Aplicação Web desenvolvida com o intuito de criar Salas Personalizadas de Perguntas, em que usuários podem criar perguntas via Formulário de Texto e receber respostas de Inteligência Artificial, geradas pelo conteúdo agregado na sala de Gravação de Voz.
### Main Features (Features Principais)
- AI generated answers with Google's Gemini API
(Respostas geradas por IA com a Gemini API da Google)
- Real time audio recording with Browser API\
(Gravação de Audio em Tempo Real via Browser API)
- Modern interface made with ShadCN and TailwindCSS\
(Interface moderna desenvolvida com ShadCN e TailwindCSS)
- Flexible database with Docker, with it's content auto generated with seeds\
(Banco de Dados flexível via Docker, com conteúdo gerado automaticamente com seeds)
## Setup
Requirements:\
(Requisitos):
- Node 22
- NPM
- Docker
### Backend
On the /backend folder:\
(Na pasta /backend:)
#### docker compose up -d
Generates and initializes the Docker Container for PostgresSQL at the port 5433.\
(Gera e inicializa o Container Docker na porta 5433.)
#### npm i
Installs NodeJS's dependencies.\
(Instala as dependências do NodeJS.)
#### npm run db:generate
Creates the database's migrations.\
(Gera as migrations da base de dados.)
#### npm run db:migrate
Executes the database's migrations.\
(Executa as migrations da base de dados.)
#### npm run db:seed
Populates the database with random initial data.\
(Popula a base de dados com dados iniciais aleatórios.)
#### npm run dev
Starts the BackEnd at the port 3333 (in development mode).\
(Inicia o BackEnd na porta 3333 (em modo de desenvolvimento).)
### Frontend
#### npm i
Installs ReactJS's dependencies.\
(Instala as dependências do ReactJS.)
#### npm run dev
Starts the FrontEnd (in development mode).\
(Inicia o FrontEnd (em modo de desenvolvimento).)
## Endpoints
All of the BackEnd application endpoints are described in the **/backend/client.http**. \
_The extension **REST Client** is required for executing the endpoints directly from the file._
Todos os endpoints da aplicação BackEnd estão descritos no arquivo **/backend/client.http**.\
_É necessária a extensão **REST Client** para executá-los diretamente do arquivo._