- Docker
- Docker compose
(Caso não esteja usando docker, você pode consultar o README de cada projeto separadamente) API | Cliente
Clone este repositorio
git clone [email protected]:hsolrac/challenge-tagview.git
cd challenge-tagview
Buid e rode o projeto
docker compose up --build
Aguarde alguns minutos e se tudo estiver ok, basta acessar http://localhost:3000
docker exec it nome_do_container rspec
Defina a seguinte variavel de ambiente para usar nos exemplos:
export API_HOST=http://localhost:4000/api/v1/
O jq é um utilitário para formatar saidas JSON no terminal
curl -H "X-API-KEY: tagview-desafio-2024" "$API_HOST/produtos" | jq
curl -X POST $API_HOST \
-H "Content-Type: application/json" \
-H "X-API-KEY: tagview-desafio-2024" \
-d '{"nome": "Produto1", "descricao": "Este produto é um teste feito via cURL", "preco": 100}' | jq
curl -X POST -H "X-API-KEY: tagview-desafio-2024" \
-F "file=@/caminho/para/o/arquivo.csv" $API_HOST"/importacao"
-
API
- Endpoints
- Lista de produtos
- Cadastro de produtos
- Validações
- Nome do Produto: mínimo de 3 caracteres, máximo 50, obrigatório.
- Preço do Produto: mínimo numérico de 10, máximo indefinido, obrigatório.
- Descrição Completa: mínimo de 30 caracteres, máximo de 255, obrigatório.
- Imagem: png ou jpg, máximo de 5MB, opcional.
- (Opcional) Importação de produtos via CSV
- Paginação
- Endpoints
-
FRONTEND
- /produtos/exibir (Listagem em cards)
- /produtos/cadastro
- Paginação e escolher limite de produtos por pagina (20, 50 ou todos)
- Abrir modal com informações do produto ao clicar no card
- Validações
- Abrir modal do produto ao detectar query params idProduto
- Melhorias visuais
- Listagem
- Formulario de cadastro
- Paginação e select de itens por pagina
- Modal
- Card
-
Deploy