{"id":16236156,"url":"https://github.com/blopa/desafio-vtex","last_synced_at":"2025-07-05T20:11:40.809Z","repository":{"id":70312292,"uuid":"43113443","full_name":"blopa/desafio-vtex","owner":"blopa","description":null,"archived":false,"fork":false,"pushed_at":"2015-09-25T06:44:33.000Z","size":312,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-14T05:29:41.662Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blopa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-09-25T06:26:20.000Z","updated_at":"2018-08-09T03:18:11.000Z","dependencies_parsed_at":"2023-02-25T03:00:23.790Z","dependency_job_id":null,"html_url":"https://github.com/blopa/desafio-vtex","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blopa%2Fdesafio-vtex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blopa%2Fdesafio-vtex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blopa%2Fdesafio-vtex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blopa%2Fdesafio-vtex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blopa","download_url":"https://codeload.github.com/blopa/desafio-vtex/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247803069,"owners_count":20998701,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-10T13:29:20.771Z","updated_at":"2025-04-08T08:26:23.812Z","avatar_url":"https://github.com/blopa.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Objetivo\n\nCriar o carrinho de compras de uma loja que vende desenvolvedores baseado no exemplo fornecido.\n\n![Imgur](http://i.imgur.com/8NPz67T.png)\n\nQueremos descobrir seu nível de habilidade em todas as áreas envolvidas na construção de um aplicativo web: *back end*, *front end* e usabilidade.\n\nSinta-se confortável para focar nas áreas que você tem mais habilidade.\n\n## Tarefas e priorização\n\nPriorize a lista de tarefas abaixo explicando os motivos da priorização de cada uma delas. Então, escolha de três a seis tarefas para implementar.\n\n* Determinar o preço do desenvolvedor a partir de informações do seu perfil do GitHub, como por exemplo: followers, repos, stars, commits, etc.\n* Substituir os inputs de texto por uma lista de desenvolvedores com nome, foto, preço e um botão de \"Adicionar ao carrinho\".\n* Criar paginação para a lista de desenvolvedores.\n* Popular a lista de desenvolvedores a partir de uma organização do GitHub.\n* Permitir a escolha de quantidade de horas contratadas de cada desenvolvedor.\n* Permitir a adição de um cupom de desconto que altera o preço total da compra. Utilize o código \"SHIPIT\".\n* Melhorar a visualização do desenvolvedor no carrinho mostrando mais informações.\n* Adicionar um botão de \"comprar\" que leva o usuário a uma página de pedido confirmado.\n\n## Server side\n\nCrie uma API REST simples que, no mínimo, utiliza uma lista em memória para guardar o estado do carrinho.\n\nAs tarefas mais avançadas exigem integração com API do GitHub. Além disso, você pode utilizar uma persistência mais robusta.\n\nTestes automatizados são **extremamente** bem vindos.\n\nAdoraríamos que você utilizasse [Go](https://golang.org/), [.NET](http://www.asp.net/) ou [Node](https://nodejs.org/) para construir sua API. Caso contrário, justifique sua escolha de tecnologia.\n\n## Client side\n\nVocê pode implementar toda a interface com HTML renderizado server-side e formulários.\n\nUma opção melhor é criar uma _single page application_ que utilize a API REST por AJAX.\n\nDe preferência, utilize [React](https://facebook.github.io/react/). Caso deseje utilizar outras tecnologias, justifique sua escolha.\n\n## Entrega e observações\n\nSeu código deve estar disponível em um repositório _git_, preferencialmente hospedado no [Github](https://github.com/).\n\nVocê pode utilizar plataformas como [Heroku](https://www.heroku.com/) ou [Google Cloud Plataform](https://cloud.google.com/) para nos mostrar a aplicação funcionando em produção.\n\nNão se preocupe se você não tem experiência em Go, Node ou React. Grande parte do nosso trabalho é lidar com novas tecnologias. Vamos levar isso em consideração.\n\nBoa sorte!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblopa%2Fdesafio-vtex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblopa%2Fdesafio-vtex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblopa%2Fdesafio-vtex/lists"}