Code Monkey home page Code Monkey logo

teste-shopper-backend's Introduction

Projeto

Front em React.js e MUI.

API backend em Node.js.

Banco de dados PostgreSQL com Prisma ORM.

Funcionamento

Site marketplace que exibe produtos, seu valor e estoque. Permite adicionar e remover do carrinho e finalizar pedido informando nome do cliente e data de entrega.

API recebe a requisição, registra o pedido e após desconta os produtos do estoque.

API também retorna a lista dos produtos, que serve para exibição no front.

Instalação

Requisitos

Possuir Node instalado e configurado em sua máquina.

Possuir Node Project Manager (NPM) instalado e configurado em sua máquina.

Possuir PostgreSQL e instalado e configurado em sua máquina.

Front end

Será necessário rodar o arquivo 'index.html' em um servidor ao vivo, como Live Edit (Intellij) e Live Server ou Live Preview (VSCode).

Variáveis de ambiente

Antes de conseguir executar, você deve configurar as variáveis de ambiente.

Crie um arquivo .env dentro da pasta 'frontend' e utilize a sugestão do arquivo .env.example. Caso altere a porta sugerida na seção backend (5000), altere também neste arquivo criado.

Crie um arquivo .env dentro da pasta 'backend'.

Neste arquivo, utilize a construção do arquivo .env.example (copie e cole).

Para rodar localmente, peencha com as seguintes sugestões:

BACKEND_PORT=5000
HOST=localhost
DATABASE_PORT=5432 (Porta padrão do PostgreSQL)
DB_USER= 'USUARIO' (Seu usuário de acesso ao banco PostgreSQL)
PASSWORD= 'SENHA' (Sua senha de acesso ao banco PostgreSQL)
DATABASE=BANCO_DE_DADOS (Nome que deseja criar para o banco de dados)

Banco de dados

Acessar a pasta 'backend' pelo terminal do computador.

Executar o comando 'npm i' para instalar as dependências do projeto.

Executar o comando 'npx prisma generate dev' para criar o banco de dados.

Caso prefira criar manualmente: nomeie e crie seu banco de dados pelo terminal. Após, acesse a database e utilize o comando SQL do arquivo 'shopper-dump.sql' para gerar a tabela e colunas.

Back end

Ainda na pasta 'backend', execute o comando 'npm run dev'.

Deve imprimir "Ouvindo na porta BACKEND_PORT!"

Após essas configurações, sua estará funcionando!

Não realizei deploy do projeto devido ao bloqueio de fazer com repositórios privados (e não criei publicamente para não expôr o código/desafio da vaga no github)

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.