Git Product home page Git Product logo

estore's People

Contributors

joseiscj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

estore's Issues

Adicionar .gitignore com o node_modules

Oi, @joseiscj. Notei que o node_modules está sendo mantido aqui no GitHub. Como esse diretório contém todas as dependências do projeto, fazer o git clone do teu repositório fica bem mais demorado. Como ele pode ser gerado automaticamente pelo install do gerenciador de pacotes, é mais indicado remover o node_modules e adicioná-lo a um .gitignore que evite que ele seja upado novamente.

Add axios nas depencias do frontend

Opa, blz? Vi que vc tá usando o axios pra lidar com as requisições http no front, mas ele não está na lista de dependências do package.json ai quem baixa seu projeto tem que instalar manualmente, então seria uma boa adicionar lá pra quem for executar seu projeto só por pra instalar as dependências do package.json.

Estrutura das pastas

Gostei muito do projeto, José Ivan. Como sugestão acho que seria interessante deixar routes no mesmo nível que as pastas controllers e model. Isso não influência muito no projeto, mas acho que fica mais organizado. Acho interessante a forma que esse site explica como faz a estruturação.

Lembrar de usar tags HTML Adequadas!

É muito importante ao desenvolver web sempre buscar a tag html adequada para o que quer fazer, seja implementado em html puro ou usando uma framework, por diversos motivos, dentre eles para a acessibilidade, depuração, garantir o controle do código e por ser uma boa pratica. No exemplo abaixo pude entender que se trata de uma entrada de dados feita pelo usuário da aplicação que quis vender algo, mas por se tratar de uma paragrafo deveria esta encapsulado dentro de uma tag <p>.

eStore/store.html

Lines 31 to 39 in c21bce9

</br>
Kit de chave de fenda com cabo flexível 40 pontas EDA.
Itens inclusos:
1 Chave Para Inserção Dos Bits
- 1 Cabo Extensor
- 6 Bits Fenda (S1, S2, S, 1/4, 3/16e 5/3)
- 7 Bits Hexagonais Retos (9/32, 1/4, 7/32, 3/16, 5/32, 1/8 E 3/32)
- 12 Soquetes (5/32, 7/32, 9/32, 11/32, 13/32 15/32, 15/32, 3/16, 1/4, 5/16, 3/8, 7/16 E 1/2)
</div></br>

eStore/store.html

Lines 75 to 77 in c21bce9

<li><b>Condição</b></li>
</br>
Produto Novo

Adicionar instruções de como iniciar o backend

A principio não consegui iniciar o backend, mas esse trecho, consegui iniciar:

mongoose.connect('mongodb://localhost:27017/nodeapi', { useNewUrlParser: true });

para:

mongoose.connect('mongodb://localhost:27017/nodeapi', { useUnifiedTopology: true, useNewUrlParser: true });

Porém não consigo fazer nem POST, nem GET. Quando tento fazer POST com um body vazio, até recebo um erro de validação, mas quando coloco os dados do schema a solicitação não é concluída.

Sugestão de melhoria para ProductList

Opa, tenho umas sugestões pra fazer pra ProductList, uma delas é adicionar um loading enquanto a chamada estiver sendo feita ao invés de entregar o componente diretamente pro usuário tendo em vista que o componente ainda não tem os dados necessários para ser renderizado.

useEffect(() => {
let path = `/produtos?page=${page}`;
BaseService.getProducts(path)
.then(res => setData(res.data.docs))
.catch(error => console.log(error))
}, [page]);

Tipo, poderia usar uma variável loading que por default é true, e se tiver true poderia ser exibido um spinner, ou o que tu preferir. A chamada ao back podia ser feita utilizando o async/await do ES6 pra facilitar se tivesse esse "loading". Uma outra sugestão é tratar a mensagem de erro ao invés de exibir somente no console, podia exibir um componente de erro para o usuário, algo do tipo. Por fim, acredito que o path podia ficar dentro do service, quando fosse chamado BaseService.getProducts, dai vc só passaria o id da página.

Descrição sobre como rodar em modo de desenvolvimento

Olá José, tudo bem?

Vi que na pasta de frontend tem a descrição do passo a passo para executar o projeto que é gerada automaticamente pelo Create React App, mas na de backend não tem. Uma sugestão que ajudaria a futuros contribuidores do projeto seria uma pequena descrição no README de como rodar a aplicação em modo de desenvolvimento, mesmo que os passos fossem apenas instruções simples de como clonar, instalar as dependências, e de como rodar as aplicações. Facilitaria muito no sentido de não ter que abrir o package.json dos projetos para saber os comandos possíveis.

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.