Esta é a API RESTful principal para o sistema Descrev.IA. O projeto é um backend focado em automatizar a criação de conteúdo e o gerenciamento de arquivos.
A aplicação combina operações de CRUD tradicionais (GET/POST) com a inteligência artificial do Google Gemini para geração de descrições, e utiliza o Multer para processar uploads de imagens de forma eficiente.
-
API para Geração de Descrições: Rota dedicada que envia prompts para o serviço Gemini e retorna descrições, títulos ou rascunhos de posts de alta qualidade.
-
Serviço de Upload de Imagens: Middleware Multer configurado para receber requisições FormData, processar e armazenar arquivos de imagens no servidor.
-
Endpoints de Dados: Rotas
GETePOSTpara manipular recursos de posts.
Abaixo estão as principais tecnologias e bibliotecas utilizadas neste projeto de backend:
| Categoria | Tecnologia | Uso |
|---|---|---|
| Backend Principal | Node.js & Express | Servidor web e roteamento principal da API. |
| Inteligência Artificial | Google Gemini API | Geração de texto e conteúdo dinâmico. |
| Upload de Arquivos | Multer | Processamento eficiente de formulários para armazenamento de imagens. |
| Banco de Dados | MongoDB | Armazenamento de dados persistentes. |
-
GET
/→ Mensagem de boas-vindas para testar a conexão do servidor. -
GET
/postagens→ Retorna a lista completa de todas as postagens. -
POST
/postagens→ Cria e salva uma nova postagem no banco de dados. -
POST
/upload→ Faz o upload de uma imagem para o servidor. -
PUT
/upload/:id→ Atualiza o registro de uma postagem existente pelo ID.
- Possuir instalação do Node.js em sua máquina.
- Possuir uma IDE que permita a utilização do Node, como por exemplo o VSCode.
- Clone o repositório na sua máquina:
git clone https://github.com/Walmir07/descrev.ia_backend.git
- Instale as dependências:
npm install # ou yarn install
É essencial configurar sua chave de acesso ao Gemini e outras variáveis antes de executar a API.
- Crie um arquivo chamado
.envna raiz do projeto. - Preencha-o com as seguintes variáveis:
# String de conexão do MOngoDB
STRING_CONEXAO=SUA_STRING_DE_CONEXAO
# Chave de acesso ao Gemini (Obrigatório para gerar conteúdo)
GEMINI_API_KEY=SUA_CHAVE_OBTIDA_NO_GOOGLE_AI_STUDIO-
Abra um novo terminal.
-
Acesse e execute o servidor presente na API da pasta back-end:
node server.js- Se preferir você poderá acessar a rota do servidor pela porta:
- Pronto, agora você terá acesso ao projeto. 😉
Este projeto está sob a licença MIT - veja o arquivo LICENSE para mais detalhes.
- Walmir Lima – @Walmir07