- Nome do projeto: NodeCRUD-API.
- Contexto: O projeto faz parte do desenvolvimento de competências em desenvolvimento Full Stack, focando na integração entre um frontend moderno e um backend escalável.
- Objetivo principal: Criar uma aplicação completa de cadastro de usuários que permita realizar todas as operações fundamentais de um sistema: Criar, Ler, Atualizar e Deletar (CRUD).
- Detalhes relevantes: Este projeto destaca-se pela utilização do Prisma ORM para gerenciar a comunicação com um banco de dados MongoDB, demonstrando uma transição prática para tecnologias de ponta no ecossistema JavaScript.
Com base no código-fonte e na estrutura do repositório, as funcionalidades principais incluem:
- Cadastro de Usuários: Interface que permite ao usuário inserir nome, idade e e-mail para criar um novo registro no banco de dados.
- Listagem em Tempo Real: Após o cadastro ou qualquer alteração, a lista de usuários é atualizada automaticamente, buscando os dados mais recentes da API.
- Edição de Dados: Funcionalidade que carrega as informações de um usuário existente de volta ao formulário para que possam ser modificadas e salvas.
- Exclusão de Registros: Um botão de ação que permite remover usuários permanentemente do sistema através de seu ID único.
- Comunicação Frontend-Backend: Integração fluida utilizando a biblioteca Axios para realizar requisições HTTP para o servidor Node.js.
O projeto utiliza uma stack tecnológica moderna e eficiente:
- React (Frontend): Framework utilizado para construir a interface de usuário de forma componentizada e reativa.
- Vite: Ferramenta de build que proporciona um ambiente de desenvolvimento extremamente rápido com Hot Module Replacement (HMR).
- Node.js & Express (Backend): Plataforma e framework utilizados para criar o servidor e gerenciar as rotas da API (GET, POST, PUT, DELETE).
- Prisma ORM: Ferramenta que facilita a modelagem de dados e a comunicação com o banco de dados através de um cliente tipado.
- MongoDB: Banco de dados NoSQL utilizado para persistir as informações dos usuários.
- CORS: Middleware essencial no Express para permitir que o frontend (Vite) acesse os recursos do backend em uma porta diferente.
- Gerenciamento de Estado e Referências: Uso prático de hooks como
useState,useEffecteuseRefpara controlar o ciclo de vida do componente e capturar dados de inputs de forma eficiente. - Modelagem de Dados NoSQL: Aprendizado sobre como estruturar modelos no Prisma para MongoDB, incluindo a geração automática de IDs e mapeamento de campos.
- Integração Full Stack: Compreensão profunda de como conectar as duas pontas da aplicação, lidando com problemas comuns como permissões de CORS e conversão de tipos de dados (ex: converter idade de string para número).
O projeto NodeCRUD-API representa um marco importante no desenvolvimento de habilidades Full Stack. A superação de desafios técnicos, como a configuração do Prisma com MongoDB e a sincronização de estados entre o frontend e a API, resultou em uma aplicação funcional e bem estruturada. A conclusão deste projeto reflete a capacidade de construir soluções completas que seguem as melhores práticas da indústria atual.
