Giter Site home page Giter Site logo

soulpet-back's Introduction

Olá! 👋

Eu sou o Jamilson Pestana Jr, um desenvolvedor web full-stack. Adoro mergulhar em novas tecnologias e transformar ideias em realidade por meio de código.

🚀 Sobre Mim

Iniciei minha jornada no mundo da programação quando me matriculei no curso de Ciência e Tecnologia na Universidade Federal da Bahia em 2020. Desde então, meu amor pela programação só tem crescido, me aprimorando sempre que possível. Durante a minha trajetória, participei de pesquisa científica, cursos de programação e um bootcamp no qual fui monitor. Em dezembro de 2023, concluí com sucesso meu bacharelado e posteriormente busquei uma graduação em Sistemas de Informação, ainda na UFBA.

Ao longo da minha jornada acadêmica, aprofundei-me em vários paradigmas de programação, aprendi e aprimorei minhas habilidades em programação orientada a objetos com Java e melhorei significativamente minha proficiência com TypeScript, servindo para o back-end e front-end. Além disso, expandi minha expertise em programação e em desenvolvimento de software participando ativamente de projetos freelancers, de faculdade, durante o bootcamp, e também no meu grupo de pesquisa, SPIDELAB+.

Tenho grande interesse em Interação Humano-Computador e Raciocínio Computacional, áreas nas quais tenho atuado como pesquisador júnior desde 2021. Acredito que entender a intricada relação entre humanos e tecnologia é crucial para criar soluções de software impactantes e amigáveis ao usuário.

🛠️ Tecnologias

Aqui estão algumas das tecnologias com as quais trabalho:

  • Frontend: HTML5, CSS3, JavaScript, TypeScript, Tailwind CSS, Bootstrap, React
  • Backend: Java, Node.js, Express
  • Design: Figma
  • Bancos de Dados: Firebase, MongoDB, MySQL
  • Ferramentas: Git, Postman

📫 Entre em Contato

Sinta-se à vontade para entrar em contato comigo pelos seguintes canais:

Vamos conectar e colaborar em projetos!

soulpet-back's People

Contributors

claudiofgmartins avatar devruso avatar gabriel-soulcode avatar jose-almir avatar juliagascho avatar sasalopes avatar stephany-canuto avatar

Forkers

juliagascho

soulpet-back's Issues

[BE-18] Criar model de Pedido

Crie um novo model para a aplicação backend. Suas colunas são:

  • codigo (chave primária, deve ser um UID);
  • quantidade (obrigatório);

O relacionamento entre Cliente-Pedido é 1:N. O relacionamento entre Produto-Pedido é 1:N.

Dica:

[BE-3] Criar recurso POST para inserção de Produtos

Crie uma rota POST para inserir novos produtos.

  • /produtos
    Todos os dados vindos do body devem ser checados para garantir que dados inválidos não entrem no banco de dados. Exemplo:
    • Checar se a categoria é uma das predefinidas (Higiene, Brinquedos, Conforto);
    • Se a data de desconto é futura;
    • Se o desconto está entre 0 e 100 (percentual);
    • Etc.

Depende de: BE-1

[BE-4] Criar recurso PUT para atualização de Produtos

Crie uma rota PUT para atualizar produtos existentes.

  • /produtos/:id
    Todos os dados vindos do body devem ser checados para garantir que dados inválidos não entrem no banco de dados. Exemplo:
    • Checar se a categoria é uma das predefinidas (Higiene, Brinquedos, Conforto);
    • Se a data de desconto é futura;
    • Se o desconto está entre 0 e 100 (percentual);
    • Etc.

Depende de: BE-1

[BE-22] Criar recurso DELETE para remoção de Produtos

Crie três rotas DELETE para remover pedidos.

  • /pedidos/:id
    Remova o pedido com o respectivo id.
  • /pedidos/clientes/:id
    Remova todos os pedidos pelo respectivo id do cliente.
  • /pedidos/produtos/:id
    Remova todos os pedidos pelo respectivo id do produto.

Depende de: BE-18

[BE-2] Criar recurso GET para listagem de Produtos

Crie duas rotas GET para listagem de produtos.

  • /produtos
    Esta rota deve listar todos os produtos. Caso seja enviado na rota uma query como /produtos?nome= ou /produtos?categoria=, os dados devem ser fitrados para que apareçam apenas produtos de acordo com a busca.
  • /produtos/:id
    Esta rota deve mostrar os dados do produto de acordo com o id fornecido.

Depende de: BE-1

[BE-19] Criar recurso GET para listagem de Pedidos

Crie quatro rotas GET para listagem de pedidos.

  • /pedidos
    Esta rota deve listar todos os pedidos.
  • /pedidos/:id
    Esta rota deve mostrar os dados do pedido de acordo com o id fornecido. O pedido retornado deve incluir os valores do produto e do cliente relacionado.
  • /pedidos/produtos/:id
    Esta rota deve mostrar os dados do pedido de acordo com o id do produto fornecido. O pedido retornado deve incluir os valores do cliente relacionado.
  • /pedidos/clientes/:id
    Esta rota deve mostrar os dados do pedido de acordo com o id do cliente fornecido. O pedido retornado deve incluir os valores do produto relacionado.

Depende de: BE-18

[SPT-4] Criar esquema de popular banco de dados com dados fictícios

Crie uma variável de ambiente DB_FORCE que pode ser true ou false. Use ela para configurar o sync force do sequelize, e caso seja true, use um esquema para preencher o banco com dados fictícios. Devem haver:

  • 2 clientes;
  • 3 pets (dois do primeiro cliente e um do segundo);
  • Caso haja outras entidades no projeto, cuidar para que elas também sejam populadas;

O desenvolvedor deve dar manutenção periódica a esta task para garantir ao final que o tratamento é consistente.

[BE-1] Criar model de Produto

Crie um novo model para a aplicação backend, ele representa um produto e possui as seguintes colunas:

  • nome (obrigatório)
  • preço (obrigatório)
  • descricao (obrigatório, 150 caracteres)
  • desconto (obrigatório)
  • dataDesconto (obrigatório)
  • categoria (obrigatório)

[BE-8] Criar model de Serviço

Crie um novo model para a aplicação backend. Suas colunas são:

  • nome (obrigatório);
  • preço (obrigatório);

O relacionamento entre Pet-Serviço é N:N. Deve ser implementado um segundo model que representa a tabela junção (Agendamento) entre as duas entidades.

Dica: Veja a seção Implementation da documentação.

[BE-20] Criar recurso POST para inserção de Pedidos

Crie uma rota POST para inserir múltiplos pedidos.

  • /pedidos
    A requisição deve receber em seu corpo um vetor de pedidos, que devem ser inseridos.
    Todos os campos do Body devem ser checados e validados antes de realizar inserção.

Depende de: BE-18

Dica: bulkCreate

[BE-9] Criar model de junção Pet-Serviço (Agendamento)

Este model deve ser implementado após o model de Serviço para complementar. Pode nomear este model de junção como Agendamento. Além dos campos de chave estrangeira, deve haver:

  • dataAgendada (data prevista para realizar o serviço);
  • realizada (booleano);

Depende de: BE-8.

Dica: Veja a seção Implementation da documentação.

[BE-10] Criar recurso GET para listagem de Serviços

Crie duas rotas GET para listagem de serviços.

  • /servicos
    Esta rota deve listar todos os serviços. Também deve aceitar uma query que filtra por status ou data
  • /servicos/:id
    Esta rota deve mostrar os dados do serviço de acordo com o id fornecido.

Depende de: BE-8

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.