Este projeto é um exercício prático para aplicar conhecimentos em Node.js, Docker, SQL, Express.js, APIs RESTful, JWT(autenticação de usuários), focado no gerenciamento de uma base de dados para cadastro de talkers (palestrantes). A aplicação permite cadastrar, visualizar, pesquisar, editar e excluir informações (CRUD).
A aplicação conta com as seguintes funcionalidades:
- Cadastro do palestrante após seu login.
- Login e token de autenticação.
- Visualização dos palestrantes ou de um único palestrante.
- Edição e exclusão de palestrantes.
A API para o CRUD de palestrantes conta com os seguintes endpoints:
- GET /talker - retorna uma lista com todas as pessoas palestrantes cadastradas.
- GET /talker/:id - retorna as informações de uma pessoa palestrante específica, identificada pelo seu ID.
- POST /login - realiza o login do usuário e retorna um token de acesso aleatório com 16 caracteres.
- POST /talker - cria uma nova pessoa palestrante.
- PUT /talker/:id - atualiza as informações de uma pessoa palestrante específica, identificada pelo seu ID.
- DELETE /talker/:id - exclui uma pessoa palestrante específica, identificada pelo seu ID.
- GET /talker/search?q=:searchTerm - pesquisa pessoas palestrantes por termos e retorna os resultados.
Para executar o projeto, siga os seguintes passos:
- Clone o repositório para sua máquina local.
- Instale as dependências do projeto utilizando o comando npm install.
- Execute o comando npm start para iniciar a aplicação.
- Utilize as rotas da API para realizar as operações desejadas.
Este projeto é um exemplo prático e didático, desenvolvido para explorar e consolidar habilidades em Node.js, Docker, SQL, JWT (autenticação de usuários), Express.js, Sequelize, APIs RESTful e gerenciamento de uma base de dados de palestrantes. Convido você a usar este projeto como referência, inspiração ou ponto de partida para o desenvolvimento de suas próprias aplicações. Estou aberto a dúvidas, sugestões ou feedbacks; não hesite em entrar em contato comigo.