/talker-manager-BE

O foco principal é criar uma aplicação de cadastro de palestrantes (talkers), onde será possível realizar operações de leitura, criação, atualização e exclusão de dados, além de implementar mecanismos de autenticação e validação de dados.

Primary LanguageJavaScript

Talker manager

Contexto

O projeto Talker Manager foi desenvolvido como parte do curso da Trybe, com o objetivo de praticar e consolidar os conceitos de desenvolvimento de APIs e operações CRUD (Create, Read, Update e Delete) utilizando o Node.js e o framework Express. O foco principal é criar uma aplicação de cadastro de palestrantes (talkers), onde será possível realizar operações de leitura, criação, atualização e exclusão de dados, além de implementar mecanismos de autenticação e validação de dados.

O que é a Trybe?🤔 A Trybe é uma escola de desenvolvimento web genuinamente comprometida com o sucesso profissional de seus estudantes. Com o Modelo de Sucesso Compartilhado (MSC) oferecido pela Trybe Fintech, uma instituição financeira autorizada pelo Banco Central do Brasil, os alunos têm a opção de pagar apenas quando estiverem trabalhando.

Objetivos do Projeto:

  1. Desenvolvimento de uma API CRUD: A aplicação permite o gerenciamento de palestrantes, com endpoints para cadastrar, visualizar, editar e remover palestrantes.
  2. Manipulação de Arquivos: A API lê e escreve em arquivos JSON utilizando o módulo fs do Node.js para simular um banco de dados simples.
  3. Autenticação Simples: A implementação de um sistema de login retorna um token aleatório que é necessário para realizar operações protegidas.
  4. Validações de Dados: Foram implementadas validações para garantir que os dados enviados nos endpoints estão no formato correto, incluindo verificação de email, senha e campos obrigatórios.

Funcionalidades Implementadas:

  • GET /talker: Retorna todos os palestrantes cadastrados.
  • GET /talker/:id: Retorna um palestrante específico com base no seu ID.
  • POST /login: Retorna um token aleatório ao receber email e senha válidos.
  • POST /talker: Cadastra um novo palestrante.
  • PUT /talker/:id: Atualiza as informações de um palestrante existente.
  • DELETE /talker/:id: Remove um palestrante.

Habilidades Desenvolvidas:

  • Node.js e Express: Criação de uma API RESTful, uso de middlewares, rotas e manipulação de arquivos com o módulo fs.
  • CRUD: Implementação completa das operações de Create, Read, Update e Delete.
  • Validação de Dados: Aplicação de validações em dados de entrada utilizando middlewares.
  • Autenticação Simples: Implementação de geração de tokens para autenticação.

Este projeto é uma excelente oportunidade para reforçar o uso de APIs REST, manipulação de dados em arquivos locais, além de introduzir conceitos básicos de integração com bancos de dados relacionais. A aplicação simula um ambiente real onde a organização e manipulação de dados são fundamentais para o bom funcionamento do sistema.

Técnologias usadas

  • Node.js - Plataforma para construir a API backend em JavaScript.
  • Express - Framework para Node.js, utilizado para gerenciar rotas e middlewares.
  • Docker - Ferramenta de conteinerização para rodar o ambiente de desenvolvimento de forma isolada.
  • fs (File System) - Módulo nativo do Node.js utilizado para ler e escrever em arquivos JSON.

Entre em contato:

E-mail isaque oliveira WhatsApp