trybesmith-BE

TrybeSmith consiste no desenvolvimento de uma API para gerenciar uma loja de itens medievais, utilizando TypeScript e o ORM Sequelize.

Stars
1
Committers
3

TrybeSmith

Contexto

O foco principal deste projeto é, com base nos ensinamentos da Trybe, desenvolver uma API para gerenciar uma loja de itens medievais, utilizando TypeScript e o ORM Sequelize. A aplicação foi construída com foco em operações de CRUD (Create, Read, Update, Delete) para produtos e pedidos, seguindo a arquitetura MSC (Model-Service-Controller).

Algumas rotas da API requerem autenticação via JWT (JSON Web Token) para garantir a segurança e controle de acesso. Além disso, foram implementados testes automatizados para cobrir as funcionalidades das camadas Service e Controller, garantindo um alto nível de qualidade no código e corretude das operações.

A API permite o cadastro de produtos, listagem de pedidos, login de usuários, e todas as operações são integradas ao banco de dados por meio do Sequelize, que facilita a comunicação com o MySQL. A lógica do sistema também garante que cada produto tenha um pedido único, reforçando o conceito de itens exclusivos e artesanais.

Funcionalidades Principais:

  • Cadastro de novos produtos no banco de dados.
  • Listagem de todos os produtos cadastrados.
  • Listagem de pedidos, incluindo os produtos associados a cada pedido.
  • Autenticação de usuários com JWT e validação de credenciais no banco de dados.

Tecnologias Usadas

  • Node.js - Plataforma para execução do JavaScript no servidor.
  • TypeScript - Superset do JavaScript que adiciona tipagem estática ao código.
  • Express - Framework para construir APIs com Node.js.
  • Sequelize - ORM para interagir com o banco de dados MySQL de forma fácil e eficiente.
  • MySQL - Banco de dados relacional utilizado para armazenar informações de produtos e pedidos.
  • JWT (JSON Web Token) - Ferramenta para geração de tokens de autenticação.
  • Mocha - Framework de testes para JavaScript.
  • Chai - Biblioteca de asserções para testes, utilizada em conjunto com o Mocha.
  • Sinon - Ferramenta para criação de mocks, stubs e spies em testes.

Entre em contato: